Skip to content
documenting.md 2.23 KiB
Newer Older

# Documenting

OpenSlice's documentation runs on [MkDocs](https://www.mkdocs.org/).

## Eligibility

Documenting OpenSlice is limited to active contributors. So, if you:
1. are an active member or participant;
3. you're ready!

## Documentation System and Structure

[MkDocs](https://www.mkdocs.org/) is a fast and simple static site generator that's geared towards building project documentation. Documentation source files are written in `Markdown`, and configured with a single `YAML` configuration file. Start by reading the [introductory tutorial](https://www.mkdocs.org/getting-started/), then check the [User Guide](https://www.mkdocs.org/user-guide/) for more information.

## Getting Started

To contribute to OpenSlice's documentation, you need to follow those easy steps:

Kostis Trantzas's avatar
Kostis Trantzas committed
1) Clone the [Documentation repository](https://labs.etsi.org/rep/osl/documentation) with:

```bash
git clone https://labs.etsi.org/rep/osl/documentation.git
```

2) Checkout the develop branch (incoming contributions are only accepted to the develop branch):

```bash
cd ./documentation
git checkout develop
```

3) Setup a local mkdocs server, using a virtual environment

=== "Linux + macOS"

    ``` bash
    python3 -m venv venv
    source venv/bin/activate
    ```
    ``` bash
    python -m pip install mkdocs
    python -m pip install mkdocs-material
    python -m pip install mkdocs-glightbox
Kostis Trantzas's avatar
Kostis Trantzas committed
    python -m pip install mkdocs-markdownextradata-plugin
    python -m pip install mike
    ```

=== "Windows"

    ``` bash
    python -m venv venv
    venv\Scripts\activate
    ```
    ``` bash
    python -m pip install mkdocs
    python -m pip install mkdocs-material
    python -m pip install mkdocs-glightbox
Kostis Trantzas's avatar
Kostis Trantzas committed
    python -m pip install mkdocs-markdownextradata-plugin
    python -m pip install mike
Kostis Trantzas's avatar
Kostis Trantzas committed
4) Wait for all downloads to finish and start the mkdocs server
Julien Satti's avatar
Julien Satti committed

Kostis Trantzas's avatar
Kostis Trantzas committed
```bash
mkdocs serve
```
Kostis Trantzas's avatar
Kostis Trantzas committed
5) Document (and commit)! 😊
Kostis Trantzas's avatar
Kostis Trantzas committed
Before committing, you should make sure that the local mkdcocs server's terminal is not producing any INFO/WARNING message regarding your contributions.
Kostis Trantzas's avatar
Kostis Trantzas committed
> The documentation website supports branches, so your accepted changes will be reflected to the develop branch which becomes the Release branch after each corresponding cycle.