Skip to content
Snippets Groups Projects
README.md 3.06 KiB
Newer Older
Damiano Falcioni's avatar
Damiano Falcioni committed
# OMiLAB Olive Micro-Frontend Modules
Damiano Falcioni's avatar
Damiano Falcioni committed

Damiano Falcioni's avatar
Damiano Falcioni committed
The project contain a collection of olive micro-frontend modules used to create custom web UI.

As sample case the project contain the `Knowledge Management university course` that use one micro-fronted module to visualize the students projects automatically retrieved from a `GitLab Group` (es. [EIS2020](https://git.boc-group.eu/uc-km-2020)) through microservices running in the [Microservice Controller Backend](https://git.boc-group.eu/adoxx/microservice-controller-rest), and another module to visualize in HTML the `GitLab project content` stored as Markdown file.

## Requirement
- Microservice Controller Deployed ([Manually](https://git.boc-group.eu/adoxx/microservice-controller-rest) or using [Docker](https://git.boc-group.eu/adoxx/microservice-controller-docker))
- GitLab platform with rights to create Groups and Projects.

## Deploy
The project is only composed of HTML pages and client side JS code. In order to deploy simply copy the `public-olive` folder into a web server public folder (like the `apache2` or `nginx`).

## Test it

The main index page under `./public-olive/sites/omilab_v2/`.
When deployed locally it can be reachable at `http://127.0.0.1/public-olive/sites/omilab_v2/`.

Damiano Falcioni's avatar
Damiano Falcioni committed
## Configure
1) Upload in the `Microservice Controller` every microservice configuration JSON file available in the `.\microservices\` folder
Damiano Falcioni's avatar
Damiano Falcioni committed
2) Edit the file `.public-olive\sites\omilab_v2\index.html` adapting the following parameters in the CONFIG variable:
Damiano Falcioni's avatar
Damiano Falcioni committed
    - mscEndpoint: Add here the public link of the deployed Microservice Controller
    - gitlabUrl: Add here the url of your GitLab portal
    - gitlabGroupId: Add here the id of the GitLab group containing the students projects
Damiano Falcioni's avatar
Damiano Falcioni committed
    - gitlabGroupPage: Add here the public link of the GitLab group containing the students projects
Damiano Falcioni's avatar
Damiano Falcioni committed

Damiano Falcioni's avatar
Damiano Falcioni committed
3) Edit the file `.public-olive\sites\omilab_v2\index.html` adapting the university course name
Damiano Falcioni's avatar
Damiano Falcioni committed

## Create GitLab Content
A sample of GitLab content is available at [https://git.boc-group.eu/uc-km-2020](https://git.boc-group.eu/uc-km-2020)

1) Create a GitLab group for the university course
2) Create a GitLab project each students group, containing a README.md file
3) Edit the README.md file adding metadata information on top of it
    - the metadata section must start and end with `---`
    - the minimum required keys are `affiliation`, `keywords`, `menu1`
    - `menu1`, `menu2`, etc. must be a single word and referring to title (identified with the markdown element `#`) in the README.md
    - An example is [here](https://git.boc-group.eu/uc-km-2020/group-01/-/blob/master/README.md)
Damiano Falcioni's avatar
Damiano Falcioni committed
    - Optional keys are:
      - `title`: if not provided the GitLab Project name will be used
      - `excepit`: if not provided the GitLab Project description will be used
      - `imgUrl`: if not provided the GitLab Project avatar will be used
4) Give to the students the `maintainer` right on the project, to edit the content
5) Students can now edit the project decription and avatar in the Project setting
6) Students can now add content to the README.md file of the project, in markdown format