diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml
index 9cd86e1c48..8ace31325a 100644
--- a/.github/workflows/docs.yml
+++ b/.github/workflows/docs.yml
@@ -15,4 +15,4 @@ jobs:
python-version: "3.11"
- run: pip install mkdocs-material
- run: mkdocs gh-deploy --force
- working-directory: ./docs/development
+ working-directory: ./docs
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 22c60cf3a8..8d36772267 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -13,252 +13,7 @@ environment. Be kind!
If you have questions, ideas or want to report a bug, feel free to [open an
issue](/../../issues). Or go ahead and [open a pull request](/../../pulls) to contribute
code. In order to reduce the burden on our maintainers, please make sure that
-your code follows our style guidelines outlined below.
+your code follows our style guidelines.
-## General
-
-This project consists of several services. Here is the architecture of the services:
-![Capella Collab Manager architecture](docs/architecture.png)
-
-To get an overview of the services, it is also worth taking a look at the Helm Chart,
-which can be found in the `helm` folder.
-
-We use REST APIs for the communication between frontend and backend.
-Please follow the [RESTful web API design best practises](https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design).
-
-We recommend to get started with the [local k8d deployment](README.md).
-
-
-By default, the services run on the following ports when using the instructions below:
-| Port | Service |
-|-------|---------------------|
-| 8080 | k3d deployment |
-| 12345 | k3d registry |
-| 4200 | frontend |
-| 8000 | backend |
-| 8081 | t4c-server mock |
-| 8082 | license-server mock |
-| 8083 | oauth-mock |
-
-## Git
-
-The commit messages have to follow the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#specification) specification.
-
-In general, we use pre-commit hooks to enforce coding standards.
-To setup the pre-commit hooks, please run the following commands:
-
-```zsh
-pip install -U pip pre-commit
-pre-commit install -t pre-commit -t commit-msg
-```
-
-## Capella Docker images
-
-Please follow the [README of the Capella Docker images repository](/../../../capella-dockerimages/blob/main/README.md).
-When all files are in the right place, you can execute the following command to build
-and push the Docker images.
-
-```sh
-make capella-dockerimages
-```
-
-## OAuth Server
-
-We use OAuth2 as authentication protocol for our application. Therefore we need an
-OAuth2 server. For local development, we have an OAuth mock that needs to be started
-first.
-
-Do not use the OAuth mock in production!
-
-First of all, navigate to the `mocks/oauth` directory.
-
-1. Run the OAuth2-Mock-Server with:
-
- ```sh
- make start
- ```
-
-2. Verify that the server runs, e.g., by navigating to
- [Well Known](http://localhost:8083/default/.well-known/openid-configuration)
-
-## Backend
-
-Requirements:
-
-- `python` and `pip`
-- `docker`
-- `make`
-
-Run the following steps:
-
-1. In the project's root directory you must create a local k3d cluster by running
-
- ```sh
- make create-cluster
- ```
-
-1. In order to use Guacamole, the cluster must be deployed:
-
- ```sh
- make deploy
- ```
-
-1. Navigate to the `backend` directory of your cloned repository.
-1. We recommend that you develop inside of a virtual environment. To set it up,
- run the following commands:
-
- ```sh
- python -m venv .venv
- source .venv/bin/activate
- pip install -U pip setuptools
- pip install -e '.[dev]'
- ```
-
-1. The backend uses various configuration settings. You can find them in the `config`
- directory.
- Please copy the file `config_template.yaml` to `config.yaml` and adjust the values.
-
- _Hint_: If you already have the k8d cluster running and if you have the
- application deployed, then no configuration values need to be adjusted.
-
- _Hint_: You can run `python -m capellacollab.config.diff` after each update to check if your config is up to date.
-
-1. To begin the development a PostgreSQL database is required. To run the database and
- start the backend run:
-
- ```sh
- make dev
- ```
-
-1. You should see it running on port 8000.
-
- - [Healthcheck](http://localhost:8000/healthcheck)
- - [Documentation](http://localhost:8000/docs)
-
-We additionally recommend that you set up your editor / IDE as follows.
-
-- Indent with 4 spaces per level of indentation
-- Maximum line length of 79 (add a ruler / thin line / highlighting / ...)
-- Set up the editor to run `black`, `pylint`, `mypy` and `isort` when saving.
-
-### Create database migrations scripts
-
-To create an upgrade script automatically (this will compare the current database state
-with the models):
-
-```sh
-alembic revision --autogenerate -m "Commit message"
-```
-
-## Authentication without application frontend
-
-Request the `auth_url`
-
-```sh
-curl -X 'GET' \
- 'http://127.0.0.1:8000/api/v1/authentication/' \
- -H 'accept: application/json'
-```
-
-Opening the `auth_url` in a browser leads you to a "Mock OAuth2 Server Sign-in" page.
-
-Login as user `admin` to be redirected to a page that is reachable when the frontend
-runs. Anyway the redirect URL in the browser's address input field contains two
-parameters `code` and `status`.
-
-Example:
-
-
- http://localhost:4200/oauth2/callback?...
- ...code=MREy4raZT9JqaYn_50yJraU4zkclGQbNcbudW404ekc...
- ...&state=r7huaqqdDBWTb8x4gUDIpt36izM0Au
-
-
-One must copy these parameters and post them via a second request returning an access
-token:
-
-```sh
-curl -X 'POST' \
- 'http://127.0.0.1:8000/api/v1/authentication/tokens' \
- -H 'accept: application/json' \
- -H 'Content-Type: application/json' \
- -d '{
- "code": "MREy4raZT9JqaYn_50yJraU4zkclGQbNcbudW404ekc",
- "state": "r7huaqqdDBWTb8x4gUDIpt36izM0Au"
-}'
-```
-
-To send a request using that token you may want to request the list of projects:
-
-```sh
-curl -X 'GET' \
- 'http://127.0.0.1:8000/api/v1/projects/' \
- -H 'accept: application/json' \
- -H 'Authorization: Bearer '
-```
-
-whereby `` must be replaced by the token you received above.
-
-Using the Swagger UI one can click on the lock symbols to enter the access token.
-
-## Frontend
-
-Requirements:
-
-- Node.js 18
-- `npm` package manager
-- [Angular CLI](https://angular.io/cli#installing-angular-cli)
-- `make`
-
-Run the following steps:
-
-1. Navigate to the `frontend` folder
-1. Install dependencies via `npm install`
-1. Optional: If you like to use your custom favicon, please copy it to `src/favicon.ico`
-1. Optional: If you like to use your custom theme, replace the file `src/custom-theme.scss`.
- You can generate custom themes [here](http://mcg.mbitson.com/)
-1. Run the frontend with:
-
- ```sh
- make dev
- ```
-
-1. You should see the frontend running on port 4200.
-
-We additionally recommend that you set up your editor / IDE as follows.
-
-- Set up the editor to run [prettier](https://prettier.io/) when saving.
-
-## User documentation
-
-Requirements:
-
-- `python` + `pip`
-
-Run the following steps:
-
-1. Navigate to the `docs/user` directory of your cloned repository.
-2. We recommend that you develop inside of a virtual environment. To set it up,
- run the following commands:
-
- ```zsh
- python -m venv .venv
- source .venv/bin/activate
- pip install -U pip setuptools
- ```
-
-3. Install MkDocs Material:
-
- ```zsh
- pip install mkdocs-material
- ```
-
-4. Serve the docs:
-
- ```zsh
- mkdocs serve
- ```
-
-## Code style
-
-You can find our code style rules [here](https://dsd-dbs.github.io/capella-collab-manager/code-style/)
+We provide a developer documentation. There you will also find information
+on how to set up a local environment: [Developer Documentation](https://dsd-dbs.github.io/capella-collab-manager/development/)
diff --git a/Makefile b/Makefile
index 4ce1b507e1..467f086bbe 100644
--- a/Makefile
+++ b/Makefile
@@ -157,8 +157,8 @@ provision-guacamole:
kubectl exec -i --context k3d-$(CLUSTER_NAME) --namespace $(NAMESPACE) deployment/$(RELEASE)-guacamole-postgres -- psql -U guacamole guacamole
@echo "Guacamole database initialized sucessfully.";
-# Execute with `make -j3 dev`
-dev: dev-oauth-mock dev-frontend dev-backend
+# Execute with `make -j4 dev`
+dev: dev-oauth-mock dev-frontend dev-backend dev-docs
dev-frontend:
$(MAKE) -C frontend dev
@@ -169,6 +169,9 @@ dev-backend:
dev-oauth-mock:
$(MAKE) -C mocks/oauth start
+dev-docs:
+ $(MAKE) -C docs serve
+
backend-logs:
kubectl logs -f -n $(NAMESPACE) -l id=$(RELEASE)-deployment-backend
diff --git a/README.md b/README.md
index 91ee814b3c..1e19543839 100644
--- a/README.md
+++ b/README.md
@@ -144,39 +144,18 @@ running in a few minutes.
### Deployment
-You can find the installation guide for deployment in the [general documentation](https://capella-collaboration-manager.readthedocs.io/en/latest/installation/).
-
-### Uninstall the environment
-
-1. If you want to uninstall the management portal, you can run the following comment:
-
- ```sh
- helm uninstall production -n helm
- ```
-
-1. The previous command doesn't clean the sessions namespace.
- Please clean it manually by running (this does also remove all persistent workspaces!):
-
- ```zsh
- kubectl -n delete all --all
- ```
-
- or just delete the namespace:
-
- ```zsh
- kubectl delete namespace
- ```
+You can find the installation guide for the deployment in the [general documentation](https://capella-collaboration-manager.readthedocs.io/en/latest/installation/).
## How it works
-![Capella Collab Manager architecture](docs/architecture.png)
-
The Capella Collaboration Manager consists of a couple of components:
- A frontend - what you see in the browser
- A backend service - for managing projects, users and sessions
- [Guacamole](https://guacamole.apache.org/), to expose the sessions via the browser
- Databases, for state persistence
+- Prometheus for session monitoring
+- Grafana Loki for logs management
External software can also be linked. These parts can be installed separately:
diff --git a/ci-templates/README.md b/ci-templates/README.md
deleted file mode 100644
index 9ca8f2a901..0000000000
--- a/ci-templates/README.md
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-# Supported instances
-
-- Gitlab CI/CD ([More information](./gitlab/README.md))
diff --git a/ci-templates/gitlab/README.md b/ci-templates/gitlab/README.md
deleted file mode 100644
index 1d17b31010..0000000000
--- a/ci-templates/gitlab/README.md
+++ /dev/null
@@ -1,174 +0,0 @@
-
-
-# Gitlab CI templates
-
-Currently, we provide the following Gitlab CI/CD templates:
-
-- [Image builder](#image-builder): Build and push backend, frontend, docs and guacamole Docker images to any Docker registry.
-- [Kubernetes deploy](#kubernetes-deploy): Deploy to a Kubernetes environment using helm
-
-## Image builder
-
-The image builder template builds the following images and pushes them to any Docker registry:
-
-- backend
-- frontend
-- user documentation
-- guacamole
-
-Please add the following section to your `.gitlab-ci.yml`:
-
-```yml
-include:
- - remote: https://raw.githubusercontent.com/DSD-DBS/capella-collab-manager/${CAPELLA_COLLABORATION_MANAGER_REVISION}/ci-templates/gitlab/image-builder.yml
-```
-
-The build images are tagged with the revision they were build with
-(e.g., when running for main the tag would be `:main`)
-All characters matching the regex [^a-za-z0-9.] will be replaced with -.
-
-You have to add the following environment variables on repository level.
-Make sure to enable the "Expand variable reference" flag.
-
-- `PRIVATE_GPG_PATH`: Path to the private GPG key used to decrypt the
- `secret.docker.json` file (More about this file [below](#docker-sops-file))
-- Variables speciying how to name each image:
- - `FRONTEND_IMAGE_NAME` (defaults to _capella/collab/frontend_)
- - `BACKEND_IMAGE_NAME` (default to _capella/collab/backend_)
- - `DOCS_IMAGE_NAME` (defaults to _capella/collab/docs_)
- - `GUACAMOLE_IMAGE_NAME` (defaults to _capella/collab/guacamole_)
-
-In addition you can adjust the following variables when running a pipeline:
-
-- Variables specifying whether to build an image (default to 1):
- - `FRONTEND`: Build the frontend image?
- - `BACKEND`: Build the backend image?
- - `DOCS`: Build the docs image?
- - `GUACAMOLE`: Build the guacamole image?
-- `TARGET`: The target for which you want to build the images
- (More information why this is important [below](#docker-sops-file))
-
-### Docker SOPS file
-
-We make use of [Mozilla SOPS](https://github.com/mozilla/sops) files to store
-secrets used in the image builder template. Therefore you need to have a
-directory `$TARGET` for each target with a `secret.docker.json` inside.
-You can create the `secret.docker.json` by running the following command:
-
-```zsh
-sops -e --output .//secret.docker.json input.json
-```
-
-The `input.json` in this command is a placeholder for your own input file,
-which should have the following structure:
-
-```json
-{
- "registry_unencrypted": "",
- "username_unencrypted": "",
- "password": ""
-}
-```
-
-Verify that you can open the secret file with `sops .//secret.docker.json`.
-When it works, delete the `input.json`!
-
-In addition, you will need a `.sops.yaml` at the root level having the
-following structure:
-
-```yml
-creation_rules:
- - path_regex: .*
- key_groups:
- - pgp:
- -
-```
-
-Any time you update the `.sops.yaml` (i.e., adding or removing a fingerprint)
-you will have to run `sops updatekeys .//secret.docker.json` to ensure
-that only authorized persons can decrypt the secret file.
-
-Lastly, please ensure that your Gitlab runners GPG fingerprint is present
-in the `.sops.yaml` such that it can use the secret values.
-
-## Kubernetes Deploy
-
-The Kubernetes deploy template is used to deploy the Capella Collaboration
-Manager to a Kubernetes cluster using Helm.
-
-Please add the following section to your `.gitlab-ci.yml`:
-
-```yml
-include:
- - remote: https://raw.githubusercontent.com/DSD-DBS/capella-collab-manager/${CAPELLA_COLLABORATION_MANAGER_REVISION}/ci-templates/gitlab/k8s-deploy.yml
-```
-
-You have to add the following environment variables on repository level.
-Make sure to enable the "Expand variable reference" flag.
-
-- `PRIVATE_GPG_PATH`: Path to the private GPG key used to decrypt the
- `secret.k8s.json` files.
-- `GRAFANA_HELM_CHART`: (Optional) - This variable is used to set the URL
- for the Grafana Helm chart. It is useful if your deployment environment
- has limited access, so you can specify a URL that is accessible for you.
-
-In addition you can adjust the following variables when running a pipeline:
-
-- `TARGET`: The target for which you want to build the images
- (More information why this is important [below](#docker-and-kubernetes-sops-files))
-- `REVISION`: The revision of the capella collab manager repository you want to use
-
-### Docker and Kubernetes sops files
-
-For the `k8s-deploy.yml` you need to have some secret sops files in place.
-First of all, you need a `secret.docker.json` file as described
-[here](#docker-sops-file). In addition, you need to have a `secret.k8s.json`
-in each target directory created by a json file having the following structure:
-
-```json
-{
- "server_unencrypted": "",
- "namespace_unencrypted": "",
- "release_unencrypted": "",
- "username_unencrypted": "",
- "token": ""
-}
-```
-
-In addition, you need to have a `general.values.yaml` containing
-all the `values.yaml` values that do not have to be encrypted and a
-`secret.values.yaml` only containing the values that should be encrypted
-(Please do not use YAML anchors in the `secret.values.yaml` file and do not
-use the `_unencrypted` suffix in the variable names).
-
-Please delete the plain text files containing secrets directly
-after encrypting them.
-
-## Gitlab repository tree
-
-The tree inside of your Gitlab repository should look like:
-
-```zsh
-├── .gitlab-ci.yml
-├── .sops.yaml
-├── environment.prod.ts
-├── favicon.ico
-├── target1
-│ ├── general.values.yaml
-│ ├── secret.values.yaml
-│ ├── secret.docker.json
-│ └── secret.k8s.json
-├── target2
-│ ├── general.values.yaml
-│ ├── secret.values.yaml
-│ ├── secret.docker.json
-│ └── secret.k8s.json
-└── ...
-```
-
-This is the (minimal) configuration (except that you would just need a target
-directory). For more advanced configuration options, please refer to the
-[image-builder](./image-builder.yml) or [k8s-deploy](k8s-deploy.yml) Gitlab template.
diff --git a/docs/user/.dockerignore b/docs/.dockerignore
similarity index 100%
rename from docs/user/.dockerignore
rename to docs/.dockerignore
diff --git a/docs/user/.gitignore b/docs/.gitignore
similarity index 100%
rename from docs/user/.gitignore
rename to docs/.gitignore
diff --git a/docs/user/.markdownlint.yaml b/docs/.markdownlint.yaml
similarity index 100%
rename from docs/user/.markdownlint.yaml
rename to docs/.markdownlint.yaml
diff --git a/docs/user/.prettierrc.yaml b/docs/.prettierrc.yaml
similarity index 100%
rename from docs/user/.prettierrc.yaml
rename to docs/.prettierrc.yaml
diff --git a/docs/user/.readthedocs.yaml b/docs/.readthedocs.yaml
similarity index 100%
rename from docs/user/.readthedocs.yaml
rename to docs/.readthedocs.yaml
diff --git a/docs/user/Dockerfile b/docs/Dockerfile
similarity index 100%
rename from docs/user/Dockerfile
rename to docs/Dockerfile
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 0000000000..8e5ca545f7
--- /dev/null
+++ b/docs/Makefile
@@ -0,0 +1,9 @@
+# SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
+# SPDX-License-Identifier: Apache-2.0
+
+install:
+ python -m venv .venv
+ .venv/bin/pip install -r requirements.txt
+
+serve:
+ .venv/bin/mkdocs serve
diff --git a/docs/architecture.png b/docs/architecture.png
deleted file mode 100644
index e78356f352..0000000000
Binary files a/docs/architecture.png and /dev/null differ
diff --git a/docs/architecture.png.license b/docs/architecture.png.license
deleted file mode 100644
index a990c04543..0000000000
--- a/docs/architecture.png.license
+++ /dev/null
@@ -1,2 +0,0 @@
-SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
-SPDX-License-Identifier: Apache-2.0
diff --git a/docs/development/docs/index.md b/docs/development/docs/index.md
deleted file mode 100644
index 5180949ce6..0000000000
--- a/docs/development/docs/index.md
+++ /dev/null
@@ -1,4 +0,0 @@
-
diff --git a/docs/development/docs/release-notes.md b/docs/development/docs/release-notes.md
deleted file mode 100644
index 087ad85ad1..0000000000
--- a/docs/development/docs/release-notes.md
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-## Release Notes Process
-
-This document outlines the process for managing and publishing release notes
-during our development cycle.
-The goal of these release notes is to provide clear and user-friendly updates.
-The release notes can be found in our user documentation, specifically in `docs/user/release-notes.md`.
-
-Below is our release notes process:
-
-1. During the development cycle, all significant updates, enhancements, and bug fixes
- should be documented in the _Current Release_ section of the Release Notes page.
- This practice ensures that all changes are tracked and can be easily communicated
- to users upon release.
-1. Before releasing a new version of the software, the _Current Release_ section
- should be renamed to reflect the actual version number. This step provides a
- clear history of changes for each version, helping users understand
- the changes made in each update.
diff --git a/docs/development/mkdocs.yml b/docs/development/mkdocs.yml
deleted file mode 100644
index e0b2bfd727..0000000000
--- a/docs/development/mkdocs.yml
+++ /dev/null
@@ -1,41 +0,0 @@
-# SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
-# SPDX-License-Identifier: Apache-2.0
-
-site_name: Capella Collaboration development documentation
-theme:
- name: material
- features:
- - content.code.annotate
-
-nav:
- - Home: index.md
- - Backend:
- - Technology overview: backend/technology.md
- - Extension modules: backend/extensions.md
- - Exception handling: backend/exception.md
- - Frontend:
- - Routes: frontend/routes.md
- - Testing: frontend/testing.md
- - Code Style: code-style.md
- - Kubernetes:
- - Meassure resource usage: k8s/resources.md
- - Release Notes Process: release-notes.md
-
-markdown_extensions:
- - meta
- - admonition
- - pymdownx.details
- - pymdownx.superfences
- - abbr
- - pymdownx.snippets
- - attr_list
- - pymdownx.emoji:
- emoji_index: !!python/name:materialx.emoji.twemoji
- emoji_generator: !!python/name:materialx.emoji.to_svg
-
-extra:
- generator: false
-
-dev_addr: 127.0.0.1:8081
-
-copyright: Copyright © 2022-2023 DB Netz AG
diff --git a/docs/docs/admin/ci-templates/gitlab/image-builder.md b/docs/docs/admin/ci-templates/gitlab/image-builder.md
new file mode 100644
index 0000000000..2a9f3ff915
--- /dev/null
+++ b/docs/docs/admin/ci-templates/gitlab/image-builder.md
@@ -0,0 +1,94 @@
+
+
+# Image builder (Gitlab CI/CD)
+
+The image builder template builds the following images and pushes them to any
+Docker registry:
+
+- backend
+- frontend
+- documentation
+- guacamole
+
+Please add the following section to your `.gitlab-ci.yml`:
+
+```yaml
+include:
+ - remote: https://raw.githubusercontent.com/DSD-DBS/capella-collab-manager/${CAPELLA_COLLABORATION_MANAGER_REVISION}/ci-templates/gitlab/image-builder.yml
+```
+
+The build images are tagged with the revision they were build with (e.g., when
+running for main the tag would be `:main`) All characters matching the regex
+[^a-za-z0-9.] will be replaced with -.
+
+You have to add the following environment variables on repository level. Make
+sure to enable the "Expand variable reference" flag.
+
+- `PRIVATE_GPG_PATH`: Path to the private GPG key used to decrypt the
+ `secret.docker.json` file (More about this file [below](#docker-sops-file))
+- Variables speciying how to name each image:
+ - `FRONTEND_IMAGE_NAME` (defaults to _capella/collab/frontend_)
+ - `BACKEND_IMAGE_NAME` (default to _capella/collab/backend_)
+ - `DOCS_IMAGE_NAME` (defaults to _capella/collab/docs_)
+ - `GUACAMOLE_IMAGE_NAME` (defaults to _capella/collab/guacamole_)
+
+In addition you can adjust the following variables when running a pipeline:
+
+- Variables specifying whether to build an image (default to 1):
+ - `FRONTEND`: Build the frontend image?
+ - `BACKEND`: Build the backend image?
+ - `DOCS`: Build the docs image?
+ - `GUACAMOLE`: Build the guacamole image?
+- `TARGET`: The target for which you want to build the images (More information
+ why this is important [below](#docker-sops-file))
+
+This is the (minimal) configuration. For more advanced configuration options,
+please refer to the
+[image-builder](https://github.com/DSD-DBS/capella-collab-manager/blob/main/ci-templates/gitlab/image-builder.yml)
+Gitlab template.
+
+### Docker SOPS file
+
+We make use of [Mozilla SOPS](https://github.com/mozilla/sops) files to store
+secrets used in the image builder template. Therefore you need to have a
+directory `$TARGET` for each target with a `secret.docker.json` inside. You can
+create the `secret.docker.json` by running the following command:
+
+```zsh
+sops -e --output .//secret.docker.json input.json
+```
+
+The `input.json` in this command is a placeholder for your own input file,
+which should have the following structure:
+
+```json
+{
+ "registry_unencrypted": "",
+ "username_unencrypted": "",
+ "password": ""
+}
+```
+
+Verify that you can open the secret file with
+`sops .//secret.docker.json`. When it works, delete the `input.json`!
+
+In addition, you will need a `.sops.yaml` at the root level having the
+following structure:
+
+```yaml
+creation_rules:
+ - path_regex: .*
+ key_groups:
+ - pgp:
+ -
+```
+
+Any time you update the `.sops.yaml` (i.e., adding or removing a fingerprint)
+you will have to run `sops updatekeys .//secret.docker.json` to ensure
+that only authorized persons can decrypt the secret file.
+
+Lastly, please ensure that your Gitlab runners GPG fingerprint is present in
+the `.sops.yaml` such that it can use the secret values.
diff --git a/docs/docs/admin/ci-templates/gitlab/k8s-deploy.md b/docs/docs/admin/ci-templates/gitlab/k8s-deploy.md
new file mode 100644
index 0000000000..9ed974d5fd
--- /dev/null
+++ b/docs/docs/admin/ci-templates/gitlab/k8s-deploy.md
@@ -0,0 +1,85 @@
+
+
+# Kubernetes Deployment (Gitlab CI/CD)
+
+The Kubernetes deploy template is used to deploy the Capella Collaboration
+Manager to a Kubernetes cluster using Helm.
+
+Please add the following section to your `.gitlab-ci.yml`:
+
+```yaml
+include:
+ - remote: https://raw.githubusercontent.com/DSD-DBS/capella-collab-manager/${CAPELLA_COLLABORATION_MANAGER_REVISION}/ci-templates/gitlab/k8s-deploy.yml
+```
+
+You have to add the following environment variables on repository level. Make
+sure to enable the "Expand variable reference" flag.
+
+- `PRIVATE_GPG_PATH`: Path to the private GPG key used to decrypt the
+ `secret.k8s.json` files.
+- `GRAFANA_HELM_CHART`: (Optional) - This variable is used to set the URL for
+ the Grafana Helm chart. It is useful if your deployment environment has
+ limited access, so you can specify a URL that is accessible for you.
+
+In addition you can adjust the following variables when running a pipeline:
+
+- `TARGET`: The target for which you want to build the images (More information
+ why this is important [below](#docker-and-kubernetes-sops-files))
+- `REVISION`: The revision of the capella collab manager repository you want to
+ use
+
+### Docker and Kubernetes sops files
+
+For the `k8s-deploy.yml` you need to have some secret sops files in place.
+First of all, you need a `secret.docker.json` file as described
+[here](#docker-sops-file). In addition, you need to have a `secret.k8s.json` in
+each target directory created by a json file having the following structure:
+
+```json
+{
+ "server_unencrypted": "",
+ "namespace_unencrypted": "",
+ "release_unencrypted": "",
+ "username_unencrypted": "",
+ "token": ""
+}
+```
+
+In addition, you need to have a `general.values.yaml` containing all the
+`values.yaml` values that do not have to be encrypted and a
+`secret.values.yaml` only containing the values that should be encrypted
+(Please do not use YAML anchors in the `secret.values.yaml` file and do not use
+the `_unencrypted` suffix in the variable names).
+
+Please delete the plain text files containing secrets directly after encrypting
+them.
+
+## Gitlab repository tree
+
+The tree inside of your Gitlab repository should look like:
+
+```zsh
+├── .gitlab-ci.yml
+├── .sops.yaml
+├── environment.prod.ts
+├── favicon.ico
+├── target1
+│ ├── general.values.yaml
+│ ├── secret.values.yaml
+│ ├── secret.docker.json
+│ └── secret.k8s.json
+├── target2
+│ ├── general.values.yaml
+│ ├── secret.values.yaml
+│ ├── secret.docker.json
+│ └── secret.k8s.json
+└── ...
+```
+
+This is the (minimal) configuration. For more advanced configuration options,
+please refer to the
+[k8s-deploy](https://github.com/DSD-DBS/capella-collab-manager/blob/main/ci-templates/gitlab/k8s-deploy.yml)
+Gitlab template.
diff --git a/docs/getting_started/getting_started.md b/docs/docs/admin/getting_started/getting_started.md
similarity index 62%
rename from docs/getting_started/getting_started.md
rename to docs/docs/admin/getting_started/getting_started.md
index f0f1d85c34..c58e99e631 100644
--- a/docs/getting_started/getting_started.md
+++ b/docs/docs/admin/getting_started/getting_started.md
@@ -5,37 +5,45 @@
# Getting started
-This guide describes the steps to get started with the Capella Collaboration Manager.
+This guide describes the steps to get started with the Capella Collaboration
+Manager.
-Before you start, make sure you have a running environment. For instructions on how to set up such an environment, please refer to the [README](../README.md).
+Before you start, make sure you have a running environment. For instructions on
+how to set up such an environment, please refer to the
+[Development installation guide](../index.md).
First open a browser and go to http://localhost:8080.
-You will be welcomed by a friendly screen and you can log in. The default setup is running an OAuth mock service for authentication.
+You will be welcomed by a friendly screen and you can log in. The default setup
+is running an OAuth mock service for authentication.
![Welcome screen](img/collab-step-1.png)
-As username, provide the `admin` for the admin user. If you have changed the username or want to test another user, enter your custom username.
+As username, provide the `admin` for the admin user. If you have changed the
+username or want to test another user, enter your custom username.
![OAuth mock](img/collab-step-2.png)
-You'll be returned to the Collaboration manager. Now you can start a session. Select _Persistent Workspace_ and hit _Request Session_.
+You'll be returned to the Collaboration manager. Now you can start a session.
+Select _Persistent Workspace_ and hit _Request Session_.
![Logged in](img/collab-step-3.png)
-The system will now schedule and start a fresh workspace.
-Wait a bit for the workspace to be available
+The system will now schedule and start a fresh workspace. Wait a bit for the
+workspace to be available
![Starting a session](img/collab-step-4.png)
-Once the session is ready, click _Connect to Session_ and a new tab should open. After a few seconds you should see the
-Capella splash screen and a workspace will be shown in your browser.
+Once the session is ready, click _Connect to Session_ and a new tab should
+open. After a few seconds you should see the Capella splash screen and a
+workspace will be shown in your browser.
![Capella welcome screen](img/collab-step-5.png)
## What's next
-This introduction only scratches the surface of what's possible with the Collaboration Manager.
+This introduction only scratches the surface of what's possible with the
+Collaboration Manager.
More advanced features include:
diff --git a/docs/getting_started/img/collab-step-1.png b/docs/docs/admin/getting_started/img/collab-step-1.png
similarity index 100%
rename from docs/getting_started/img/collab-step-1.png
rename to docs/docs/admin/getting_started/img/collab-step-1.png
diff --git a/docs/getting_started/img/collab-step-1.png.license b/docs/docs/admin/getting_started/img/collab-step-1.png.license
similarity index 100%
rename from docs/getting_started/img/collab-step-1.png.license
rename to docs/docs/admin/getting_started/img/collab-step-1.png.license
diff --git a/docs/getting_started/img/collab-step-2.png b/docs/docs/admin/getting_started/img/collab-step-2.png
similarity index 100%
rename from docs/getting_started/img/collab-step-2.png
rename to docs/docs/admin/getting_started/img/collab-step-2.png
diff --git a/docs/getting_started/img/collab-step-2.png.license b/docs/docs/admin/getting_started/img/collab-step-2.png.license
similarity index 100%
rename from docs/getting_started/img/collab-step-2.png.license
rename to docs/docs/admin/getting_started/img/collab-step-2.png.license
diff --git a/docs/getting_started/img/collab-step-3.png b/docs/docs/admin/getting_started/img/collab-step-3.png
similarity index 100%
rename from docs/getting_started/img/collab-step-3.png
rename to docs/docs/admin/getting_started/img/collab-step-3.png
diff --git a/docs/getting_started/img/collab-step-3.png.license b/docs/docs/admin/getting_started/img/collab-step-3.png.license
similarity index 100%
rename from docs/getting_started/img/collab-step-3.png.license
rename to docs/docs/admin/getting_started/img/collab-step-3.png.license
diff --git a/docs/getting_started/img/collab-step-4.png b/docs/docs/admin/getting_started/img/collab-step-4.png
similarity index 100%
rename from docs/getting_started/img/collab-step-4.png
rename to docs/docs/admin/getting_started/img/collab-step-4.png
diff --git a/docs/getting_started/img/collab-step-4.png.license b/docs/docs/admin/getting_started/img/collab-step-4.png.license
similarity index 100%
rename from docs/getting_started/img/collab-step-4.png.license
rename to docs/docs/admin/getting_started/img/collab-step-4.png.license
diff --git a/docs/getting_started/img/collab-step-5.png b/docs/docs/admin/getting_started/img/collab-step-5.png
similarity index 100%
rename from docs/getting_started/img/collab-step-5.png
rename to docs/docs/admin/getting_started/img/collab-step-5.png
diff --git a/docs/getting_started/img/collab-step-5.png.license b/docs/docs/admin/getting_started/img/collab-step-5.png.license
similarity index 100%
rename from docs/getting_started/img/collab-step-5.png.license
rename to docs/docs/admin/getting_started/img/collab-step-5.png.license
diff --git a/docs/docs/admin/index.md b/docs/docs/admin/index.md
new file mode 100644
index 0000000000..52051e82a6
--- /dev/null
+++ b/docs/docs/admin/index.md
@@ -0,0 +1,13 @@
+
+
+Are you interested in the platform and want to integrate it into your
+environment? Then we would like to know more about the use case so that we can
+take it into account in future development. Please feel free to contact us:
+
+
+Otherwise, you can also try out the platform locally. The README provides
+instructions for this. For production deployments you can learn more here:
+[Production installation](./installation.md)
diff --git a/docs/user/docs/installation.md b/docs/docs/admin/installation.md
similarity index 100%
rename from docs/user/docs/installation.md
rename to docs/docs/admin/installation.md
diff --git a/docs/docs/admin/uninstallation.md b/docs/docs/admin/uninstallation.md
new file mode 100644
index 0000000000..4b8a7f3528
--- /dev/null
+++ b/docs/docs/admin/uninstallation.md
@@ -0,0 +1,38 @@
+
+
+# Uninstallation of the Collaboration Manager
+
+We're sorry to see you go :sob:
If you have any suggestions for us to
+improve, please share them with us. Either privately via
+or via a
+[Github issue](https://github.com/DSD-DBS/capella-collab-manager/issues).
+
+
+1. If you want to uninstall the management portal, you can run the following
+ comment:
+
+ ```sh
+ helm uninstall -n helm
+ ```
+
+ or delete the management portal namespace:
+
+ ```zsh
+ kubectl delete namespace
+ ```
+
+1. The previous command doesn't clean the sessions namespace. Please clean it
+ manually by running (this does also remove all persistent workspaces!):
+
+ ```zsh
+ kubectl -n delete all --all
+ ```
+
+ or just delete the namespace:
+
+ ```zsh
+ kubectl delete namespace
+ ```
diff --git a/docs/docs/development/backend/authentication.md b/docs/docs/development/backend/authentication.md
new file mode 100644
index 0000000000..8970cb14d2
--- /dev/null
+++ b/docs/docs/development/backend/authentication.md
@@ -0,0 +1,63 @@
+
+
+## Authentication via personal access token (requires a running frontend)
+
+Find more information about authentication with personal access tokens in the
+user documentation: [Authentication](../../user/tokens.md)
+
+## Authentication without application frontend
+
+Request the `auth_url`
+
+```sh
+curl -X 'GET' \
+ 'http://127.0.0.1:8000/api/v1/authentication/' \
+ -H 'accept: application/json'
+```
+
+Opening the `auth_url` in a browser leads you to a "Mock OAuth2 Server Sign-in"
+page.
+
+Login as user `admin` to be redirected to a page that is reachable when the
+frontend runs. Anyway the redirect URL in the browser's address input field
+contains two parameters `code` and `status`.
+
+Example:
+
+
+ http://localhost:4200/oauth2/callback?...
+ ...code=MREy4raZT9JqaYn_50yJraU4zkclGQbNcbudW404ekc...
+ ...&state=r7huaqqdDBWTb8x4gUDIpt36izM0Au
+
+
+One must copy these parameters and post them via a second request returning an
+access token:
+
+```sh
+curl -X 'POST' \
+ 'http://127.0.0.1:8000/api/v1/authentication/tokens' \
+ -H 'accept: application/json' \
+ -H 'Content-Type: application/json' \
+ -d '{
+ "code": "MREy4raZT9JqaYn_50yJraU4zkclGQbNcbudW404ekc",
+ "state": "r7huaqqdDBWTb8x4gUDIpt36izM0Au"
+}'
+```
+
+To send a request using that token you may want to request the list of
+projects:
+
+```sh
+curl -X 'GET' \
+ 'http://127.0.0.1:8000/api/v1/projects/' \
+ -H 'accept: application/json' \
+ -H 'Authorization: Bearer '
+```
+
+whereby `` must be replaced by the token you received above.
+
+Using the Swagger UI one can click on the lock symbols to enter the access
+token.
diff --git a/docs/development/docs/code-style.md b/docs/docs/development/backend/code-style.md
similarity index 52%
rename from docs/development/docs/code-style.md
rename to docs/docs/development/backend/code-style.md
index a21078bcdd..1f509bcd27 100644
--- a/docs/development/docs/code-style.md
+++ b/docs/docs/development/backend/code-style.md
@@ -3,9 +3,7 @@
~ SPDX-License-Identifier: Apache-2.0
-->
-## Backend
-
-### General
+## General
We base our code style on a modified version of the [Google style guide] for
Python code. The key differences are:
@@ -16,18 +14,20 @@ Python code. The key differences are:
per [PEP-257]. For example, write "Do X and Y" instead of "Does X and Y".
- **Overridden methods**: If the documentation did not change from the base
- class (i.e. the base class' method's docstring still applies without modification),
- do not add a short docstring á la "See base class". This lets automated tools pick
- up the full base class docstring instead, and is therefore more useful in IDEs etc.
+ class (i.e. the base class' method's docstring still applies without
+ modification), do not add a short docstring á la "See base class". This lets
+ automated tools pick up the full base class docstring instead, and is
+ therefore more useful in IDEs etc.
-- **Linting**: Use [pylint] for static code analysis, and [mypy] for
- static type checking.
+- **Linting**: Use [pylint] for static code analysis, and [mypy] for static
+ type checking.
-- **Formatting**: Use [black] as code auto-formatter. The maximum line length is 79,
- as per [PEP-8]. This setting should be automatically picked up from the
- `pyproject.toml` file. The reason for the shorter line length is that it avoids
- wrapping and overflows in side-by-side split views (e.g. diffs) if there's also
- information displayed to the side of it (e.g. a tree view of the modified files).
+- **Formatting**: Use [black] as code auto-formatter. The maximum line length
+ is 79, as per [PEP-8]. This setting should be automatically picked up from
+ the `pyproject.toml` file. The reason for the shorter line length is that it
+ avoids wrapping and overflows in side-by-side split views (e.g. diffs) if
+ there's also information displayed to the side of it (e.g. a tree view of the
+ modified files).
Be aware of the different line length of 72 for docstrings. We
currently do not have a satisfactory solution to automatically apply
@@ -55,9 +55,9 @@ Python code. The key differences are:
- Use `... | None` (with `None` always as the last union member) instead of
`t.Optional[...]` and always explicitly annotate where `None` is possible.
-- **Python style rules**: For conflicting parts, the [black] code style
- wins. If you have set up `black` correctly, you don't need to worry about
- this though :)
+- **Python style rules**: For conflicting parts, the [black] code style wins.
+ If you have set up `black` correctly, you don't need to worry about this
+ though :)
- When working with `dict`s, consider using `t.TypedDict` instead of a more
generic `dict[str, float|int|str]`-like annotation where possible, as the
latter is much less precise (often requiring additional `assert`s or
@@ -65,85 +65,46 @@ Python code. The key differences are:
- Prefer `t.NamedTuple` over `collections.namedtuple`, because the former uses
a more convenient `class ...:` syntax and also supports type annotations.
-### Conventions
+## Conventions
-#### Imports
+### Imports
-1. Always use `from x import y` or `from x import y as z` when importing modules.
- The only exception is when you are importing a high-level package or module,
- such as `import fastapi`
+1. Always use `from x import y` or `from x import y as z` when importing
+ modules. The only exception is when you are importing a high-level package
+ or module, such as `import fastapi`
-1. Given that we often have identical file names across our modules and submodules,
- adhering to the Google style guide can lead to naming conflicts during imports.
- To address this, we distinguish between the following two cases:
+1. Given that we often have identical file names across our modules and
+ submodules, adhering to the Google style guide can lead to naming conflicts
+ during imports. To address this, we distinguish between the following two
+ cases:
- 1. _Importing a module from the current directory_: In this case, we
- do not need to rename the module and can use it as is. For instance,
- if we are in `capellacollab.projects.toolsmodels`, we can simply import
- the `crud` and `model` modules like this: `from . import crud, model`.
+ 1. _Importing a module from the current directory_: In this case, we do not
+ need to rename the module and can use it as is. For instance, if we are
+ in `capellacollab.projects.toolsmodels`, we can simply import the `crud`
+ and `model` modules like this: `from . import crud, model`.
- 2. _Importing a module from a different directory_: In this scenario,
- we must add an `as xy` suffix to avoid naming conflicts with the first case.
- We follow this pattern:
+ 2. _Importing a module from a different directory_: In this scenario, we
+ must add an `as xy` suffix to avoid naming conflicts with the first
+ case. We follow this pattern:
`from capellacollab.extensions. import submodule as _`
- For example, if we are in `capellacollab.sessions` and want to import `crud`
- from `capellacollab.projects.toolsmodels`, we would do it like this:
+ For example, if we are in `capellacollab.sessions` and want to import
+ `crud` from `capellacollab.projects.toolsmodels`, we would do it like
+ this:
`from capellacollab.projects.toolmodels import crud as toolmodels_crud`
-1. Only use relative imports up to one level above the current one. This means you
- should use `from . import y` for the current module and `from .. import y as z`
- for one level above. For all other imports beyond this level, use the full path
- as described in 3.
+1. Only use relative imports up to one level above the current one. This means
+ you should use `from . import y` for the current module and
+ `from .. import y as z` for one level above. For all other imports beyond
+ this level, use the full path as described in 3.
-#### Naming conventions
+### Naming conventions
- All SQLAlchemy models should have `Database` as a prefix, e.g.,
`DatabaseProject` or `DatabaseUser`.
-## Frontend
-
-### General
-
-### Naming Conventions
-
-#### Crud Functions
-
-##### Creating resource
-
-For creating a resource one should use `create` as a prefix followed by
-the resource one wants to create (e.g., `createProject(...): Observable`)
-
-##### Retriving resources
-
-In general, one should use `get` as prefix for a function that retrieves and
-returns resources.
-In case, one wants to get a list of alls resources use `get + + s`
-as function name (e.g., `getProjects`).
-In case, one wants to get a specific resource use `get + + By + `
-as function name (e.g., `getProjectByName(name: string)`). The only exception
-to this rule is the case where one wants to get a resource by its identifier
-where the `By + ` part can be omitted (e.g., `getProject(id: number)`).
-
-In some services, we use the concept of having a static representation of a resource or
-a list of resources as observable inside the service. For example,
-
-```ts
-private _gitModel = new BehaviorSubject(undefined);
-private _gitModels = new BehaviorSubject(undefined);
-
-readonly gitModel = this._gitModel.asObservable();
-readonly gitModels = this._gitModels.asObservable();
-```
-
-In this case, we use the prefix `load` to retrieve the data but instead of
-returning it the data is published to all subscribers. However, the naming
-rules from above also apply here (e.g., `loadGitModels` to publish all git models
-to the `gitModels` observable and `loadGitModelById` to publish only one git model
-to the `gitModel` observable)
-
[google style guide]: https://google.github.io/styleguide/pyguide.html
[numpy style guide]: https://numpydoc.readthedocs.io/en/latest/format.html
[pep-8]: https://peps.python.org/pep-0008/
@@ -152,4 +113,5 @@ to the `gitModel` observable)
[mypy]: https://github.com/python/mypy
[pylint]: https://github.com/PyCQA/pylint
[isort]: https://github.com/PyCQA/isort
-[black]: https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html
+[black]:
+ https://black.readthedocs.io/en/stable/the_black_code_style/current_style.html
diff --git a/docs/docs/development/backend/database-migration.md b/docs/docs/development/backend/database-migration.md
new file mode 100644
index 0000000000..50f4d39693
--- /dev/null
+++ b/docs/docs/development/backend/database-migration.md
@@ -0,0 +1,13 @@
+
+
+# Create database migrations scripts
+
+To create an upgrade script automatically (this will compare the current
+database state with the models):
+
+```sh
+alembic revision --autogenerate -m "Commit message"
+```
diff --git a/docs/development/docs/backend/exception.md b/docs/docs/development/backend/exception.md
similarity index 100%
rename from docs/development/docs/backend/exception.md
rename to docs/docs/development/backend/exception.md
diff --git a/docs/development/docs/backend/extensions.md b/docs/docs/development/backend/extensions.md
similarity index 100%
rename from docs/development/docs/backend/extensions.md
rename to docs/docs/development/backend/extensions.md
diff --git a/docs/development/docs/backend/technology.md b/docs/docs/development/backend/technology.md
similarity index 100%
rename from docs/development/docs/backend/technology.md
rename to docs/docs/development/backend/technology.md
diff --git a/docs/docs/development/frontend/code-style.md b/docs/docs/development/frontend/code-style.md
new file mode 100644
index 0000000000..fb71c03947
--- /dev/null
+++ b/docs/docs/development/frontend/code-style.md
@@ -0,0 +1,41 @@
+
+
+## Naming Conventions
+
+### Crud Functions
+
+#### Creating resource
+
+For creating a resource one should use `create` as a prefix followed by the
+resource one wants to create (e.g., `createProject(...): Observable`)
+
+#### Retriving resources
+
+In general, one should use `get` as prefix for a function that retrieves and
+returns resources. In case, one wants to get a list of alls resources use
+`get + + s` as function name (e.g., `getProjects`). In case,
+one wants to get a specific resource use
+`get + + By + ` as function name (e.g.,
+`getProjectByName(name: string)`). The only exception to this rule is the case
+where one wants to get a resource by its identifier where the `By + `
+part can be omitted (e.g., `getProject(id: number)`).
+
+In some services, we use the concept of having a static representation of a
+resource or a list of resources as observable inside the service. For example,
+
+```ts
+private _gitModel = new BehaviorSubject(undefined);
+private _gitModels = new BehaviorSubject(undefined);
+
+readonly gitModel = this._gitModel.asObservable();
+readonly gitModels = this._gitModels.asObservable();
+```
+
+In this case, we use the prefix `load` to retrieve the data but instead of
+returning it the data is published to all subscribers. However, the naming
+rules from above also apply here (e.g., `loadGitModels` to publish all git
+models to the `gitModels` observable and `loadGitModelById` to publish only one
+git model to the `gitModel` observable)
diff --git a/docs/docs/development/frontend/customize.md b/docs/docs/development/frontend/customize.md
new file mode 100644
index 0000000000..e8fd91333c
--- /dev/null
+++ b/docs/docs/development/frontend/customize.md
@@ -0,0 +1,13 @@
+
+
+# Customize the frontend
+
+You can customize the frontend by using a custom theme and a custom favicon:
+
+- If you like to use your custom favicon, please copy it to `src/favicon.ico`
+- If you like to use your custom theme, replace the file
+ `src/custom-theme.scss`. You can generate custom themes
+ [here](http://mcg.mbitson.com/)
diff --git a/docs/development/docs/frontend/routes.md b/docs/docs/development/frontend/routes.md
similarity index 100%
rename from docs/development/docs/frontend/routes.md
rename to docs/docs/development/frontend/routes.md
diff --git a/docs/development/docs/frontend/testing.md b/docs/docs/development/frontend/testing.md
similarity index 100%
rename from docs/development/docs/frontend/testing.md
rename to docs/docs/development/frontend/testing.md
diff --git a/docs/docs/development/index.md b/docs/docs/development/index.md
new file mode 100644
index 0000000000..ae8a422907
--- /dev/null
+++ b/docs/docs/development/index.md
@@ -0,0 +1,90 @@
+
+
+Thanks for your interest in our project. Contributions are always welcome!
+
+We are committed to fostering a welcoming, respectful, and harassment-free
+environment. Be kind!
+
+If you have questions, ideas or want to report a bug, feel free to
+[open an issue](https://github.com/DSD-DBS/capella-collab-manager/issues). Or
+go ahead and
+[open a pull request](https://github.com/DSD-DBS/capella-collab-manager/pulls)
+to contribute code. In order to reduce the burden on our maintainers, please
+make sure that your code follows our style guidelines.
+
+## Setup of a local Development Environment
+
+In addition to the
+[local k8s deployment](https://github.com/DSD-DBS/capella-collab-manager#running-locally-with-k3d),
+we have local development environment. This environment includes automatic
+reloading of the frontend and backend.
+
+### Requirements
+
+- `Python` >= 3.11
+- `Docker`
+- `GNU Make`
+- `Node.js 18` >= v20.8.0
+- `npm` package manager
+- [`Angular CLI`](https://angular.io/cli#installing-angular-cli)
+
+### Backend configuration
+
+The backend uses various configuration settings. You can find them in the
+`config` directory. Please copy the file `config_template.yaml` to
+`config.yaml` and adjust the values.
+
+_Hint_: If you already have the k8d cluster running and if you have the
+application deployed, then no configuration values need to be adjusted.
+
+_Hint_: You can run `python -m capellacollab.config.diff` after each update to
+check if your config is up to date.
+
+### Get started
+
+To get started, run the following command in the root of the repository for the
+initial setup (only required once):
+
+```zsh
+(cd backend && make install)
+(cd frontend && npm i)
+(cd docs && make install)
+```
+
+Then, run the following command to start the dev environment:
+
+```zsh
+make -j4 dev
+```
+
+If everything went well, the frontend and backend should be running now:
+
+- [Frontend](http://localhost:4200)
+- [Backend healthcheck](http://localhost:8000/healthcheck)
+- [Backend API documentation](http://localhost:8000/docs)
+- [Capella Collaboration Manager Documentation](http://localhost:8081)
+
+## General notes
+
+### REST APIs
+
+We use REST APIs for the communication between frontend and backend. Please
+follow the
+[RESTful web API design best practises](https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design).
+
+### Git
+
+The commit messages have to follow the
+[Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#specification)
+specification.
+
+In general, we use pre-commit hooks to enforce coding standards. To setup the
+pre-commit hooks, please run the following commands:
+
+```zsh
+pip install -U pip pre-commit
+pre-commit install
+```
diff --git a/docs/development/docs/k8s/resources.md b/docs/docs/development/k8s/resources.md
similarity index 100%
rename from docs/development/docs/k8s/resources.md
rename to docs/docs/development/k8s/resources.md
diff --git a/docs/docs/index.md b/docs/docs/index.md
new file mode 100644
index 0000000000..94db145705
--- /dev/null
+++ b/docs/docs/index.md
@@ -0,0 +1,15 @@
+
+
+Welcome to the official documentation of the Capella Collaboration Manager.
+
+To continue, please select one of the following options:
+
+- I am a user of the platform or interested in its features:
+ [User documentation](./user/index.md)
+- I am a system administrator and want to learn how to install and configure
+ the platform: [Administrator documentation](./admin/index.md)
+- I am a developer and want to learn how to extend the platform:
+ [Developer documentation](./development/index.md)
diff --git a/docs/user/docs/release-notes.md b/docs/docs/release-notes.md
similarity index 92%
rename from docs/user/docs/release-notes.md
rename to docs/docs/release-notes.md
index 4f5385997e..6d70695aad 100644
--- a/docs/user/docs/release-notes.md
+++ b/docs/docs/release-notes.md
@@ -3,9 +3,6 @@
~ SPDX-License-Identifier: Apache-2.0
-->
-The release notes are no longer tracked in the documentation.
We use the
-Github release notes instead:
-
- Release notes of the **Capella Collaboration Manager** are available [here](https://github.com/DSD-DBS/capella-collab-manager/releases).
- **Session related** release notes are available [here](https://github.com/DSD-DBS/capella-dockerimages/releases).
diff --git a/docs/docs/style.css b/docs/docs/style.css
new file mode 100644
index 0000000000..3353360153
--- /dev/null
+++ b/docs/docs/style.css
@@ -0,0 +1,8 @@
+/*
+ * SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
+ * SPDX-License-Identifier: Apache-2.0
+ */
+
+html {
+ overflow-y: scroll;
+}
diff --git a/docs/user/docs/additional/alerts/create.md b/docs/docs/user/alerts/create.md
similarity index 100%
rename from docs/user/docs/additional/alerts/create.md
rename to docs/docs/user/alerts/create.md
diff --git a/docs/user/docs/additional/alerts/create.png b/docs/docs/user/alerts/create.png
similarity index 100%
rename from docs/user/docs/additional/alerts/create.png
rename to docs/docs/user/alerts/create.png
diff --git a/docs/user/docs/additional/alerts/create.png.license b/docs/docs/user/alerts/create.png.license
similarity index 100%
rename from docs/user/docs/additional/alerts/create.png.license
rename to docs/docs/user/alerts/create.png.license
diff --git a/docs/user/docs/additional/alerts/success_alert.png b/docs/docs/user/alerts/success_alert.png
similarity index 100%
rename from docs/user/docs/additional/alerts/success_alert.png
rename to docs/docs/user/alerts/success_alert.png
diff --git a/docs/user/docs/additional/alerts/success_alert.png.license b/docs/docs/user/alerts/success_alert.png.license
similarity index 100%
rename from docs/user/docs/additional/alerts/success_alert.png.license
rename to docs/docs/user/alerts/success_alert.png.license
diff --git a/docs/user/docs/index.md b/docs/docs/user/index.md
similarity index 98%
rename from docs/user/docs/index.md
rename to docs/docs/user/index.md
index c87017b511..7873b003fd 100644
--- a/docs/user/docs/index.md
+++ b/docs/docs/user/index.md
@@ -5,7 +5,7 @@
# Introduction
-Welcome onboard of the Modeling Collaboration Manager. This platform helps you
+Welcome onboard of the Capella Collaboration Manager. This platform helps you
co-work on architectures using tools like
[Capella](https://www.eclipse.org/capella/),
[Papyrus](https://www.eclipse.org/papyrus/),
diff --git a/docs/user/docs/projects/access.md b/docs/docs/user/projects/access.md
similarity index 100%
rename from docs/user/docs/projects/access.md
rename to docs/docs/user/projects/access.md
diff --git a/docs/user/docs/projects/access/project-overview.png b/docs/docs/user/projects/access/project-overview.png
similarity index 100%
rename from docs/user/docs/projects/access/project-overview.png
rename to docs/docs/user/projects/access/project-overview.png
diff --git a/docs/user/docs/projects/access/project-overview.png.license b/docs/docs/user/projects/access/project-overview.png.license
similarity index 100%
rename from docs/user/docs/projects/access/project-overview.png.license
rename to docs/docs/user/projects/access/project-overview.png.license
diff --git a/docs/user/docs/projects/add-user.md b/docs/docs/user/projects/add-user.md
similarity index 100%
rename from docs/user/docs/projects/add-user.md
rename to docs/docs/user/projects/add-user.md
diff --git a/docs/user/docs/projects/add-user/add-user-empty.png b/docs/docs/user/projects/add-user/add-user-empty.png
similarity index 100%
rename from docs/user/docs/projects/add-user/add-user-empty.png
rename to docs/docs/user/projects/add-user/add-user-empty.png
diff --git a/docs/user/docs/projects/add-user/add-user-empty.png.license b/docs/docs/user/projects/add-user/add-user-empty.png.license
similarity index 100%
rename from docs/user/docs/projects/add-user/add-user-empty.png.license
rename to docs/docs/user/projects/add-user/add-user-empty.png.license
diff --git a/docs/user/docs/projects/add-user/add-user.png b/docs/docs/user/projects/add-user/add-user.png
similarity index 100%
rename from docs/user/docs/projects/add-user/add-user.png
rename to docs/docs/user/projects/add-user/add-user.png
diff --git a/docs/user/docs/projects/add-user/add-user.png.license b/docs/docs/user/projects/add-user/add-user.png.license
similarity index 100%
rename from docs/user/docs/projects/add-user/add-user.png.license
rename to docs/docs/user/projects/add-user/add-user.png.license
diff --git a/docs/user/docs/projects/add-user/manage-users.png b/docs/docs/user/projects/add-user/manage-users.png
similarity index 100%
rename from docs/user/docs/projects/add-user/manage-users.png
rename to docs/docs/user/projects/add-user/manage-users.png
diff --git a/docs/user/docs/projects/add-user/manage-users.png.license b/docs/docs/user/projects/add-user/manage-users.png.license
similarity index 100%
rename from docs/user/docs/projects/add-user/manage-users.png.license
rename to docs/docs/user/projects/add-user/manage-users.png.license
diff --git a/docs/user/docs/projects/add-user/modify-user.png b/docs/docs/user/projects/add-user/modify-user.png
similarity index 100%
rename from docs/user/docs/projects/add-user/modify-user.png
rename to docs/docs/user/projects/add-user/modify-user.png
diff --git a/docs/user/docs/projects/add-user/modify-user.png.license b/docs/docs/user/projects/add-user/modify-user.png.license
similarity index 100%
rename from docs/user/docs/projects/add-user/modify-user.png.license
rename to docs/docs/user/projects/add-user/modify-user.png.license
diff --git a/docs/user/docs/projects/create.md b/docs/docs/user/projects/create.md
similarity index 100%
rename from docs/user/docs/projects/create.md
rename to docs/docs/user/projects/create.md
diff --git a/docs/user/docs/projects/create/step-1.png b/docs/docs/user/projects/create/step-1.png
similarity index 100%
rename from docs/user/docs/projects/create/step-1.png
rename to docs/docs/user/projects/create/step-1.png
diff --git a/docs/user/docs/projects/create/step-1.png.license b/docs/docs/user/projects/create/step-1.png.license
similarity index 100%
rename from docs/user/docs/projects/create/step-1.png.license
rename to docs/docs/user/projects/create/step-1.png.license
diff --git a/docs/user/docs/projects/create/step-2.png b/docs/docs/user/projects/create/step-2.png
similarity index 100%
rename from docs/user/docs/projects/create/step-2.png
rename to docs/docs/user/projects/create/step-2.png
diff --git a/docs/user/docs/projects/create/step-2.png.license b/docs/docs/user/projects/create/step-2.png.license
similarity index 100%
rename from docs/user/docs/projects/create/step-2.png.license
rename to docs/docs/user/projects/create/step-2.png.license
diff --git a/docs/user/docs/projects/models/backups/backups-overview.png b/docs/docs/user/projects/models/backups/backups-overview.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/backups-overview.png
rename to docs/docs/user/projects/models/backups/backups-overview.png
diff --git a/docs/user/docs/projects/models/backups/backups-overview.png.license b/docs/docs/user/projects/models/backups/backups-overview.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/backups-overview.png.license
rename to docs/docs/user/projects/models/backups/backups-overview.png.license
diff --git a/docs/user/docs/projects/models/backups/create-pipeline.png b/docs/docs/user/projects/models/backups/create-pipeline.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/create-pipeline.png
rename to docs/docs/user/projects/models/backups/create-pipeline.png
diff --git a/docs/user/docs/projects/models/backups/create-pipeline.png.license b/docs/docs/user/projects/models/backups/create-pipeline.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/create-pipeline.png.license
rename to docs/docs/user/projects/models/backups/create-pipeline.png.license
diff --git a/docs/user/docs/projects/models/backups/model-overview.png b/docs/docs/user/projects/models/backups/model-overview.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/model-overview.png
rename to docs/docs/user/projects/models/backups/model-overview.png
diff --git a/docs/user/docs/projects/models/backups/model-overview.png.license b/docs/docs/user/projects/models/backups/model-overview.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/model-overview.png.license
rename to docs/docs/user/projects/models/backups/model-overview.png.license
diff --git a/docs/user/docs/projects/models/backups/remove-pipeline.png b/docs/docs/user/projects/models/backups/remove-pipeline.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/remove-pipeline.png
rename to docs/docs/user/projects/models/backups/remove-pipeline.png
diff --git a/docs/user/docs/projects/models/backups/remove-pipeline.png.license b/docs/docs/user/projects/models/backups/remove-pipeline.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/remove-pipeline.png.license
rename to docs/docs/user/projects/models/backups/remove-pipeline.png.license
diff --git a/docs/user/docs/projects/models/backups/remove.md b/docs/docs/user/projects/models/backups/remove.md
similarity index 100%
rename from docs/user/docs/projects/models/backups/remove.md
rename to docs/docs/user/projects/models/backups/remove.md
diff --git a/docs/user/docs/projects/models/backups/run-pipeline.png b/docs/docs/user/projects/models/backups/run-pipeline.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/run-pipeline.png
rename to docs/docs/user/projects/models/backups/run-pipeline.png
diff --git a/docs/user/docs/projects/models/backups/run-pipeline.png.license b/docs/docs/user/projects/models/backups/run-pipeline.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/run-pipeline.png.license
rename to docs/docs/user/projects/models/backups/run-pipeline.png.license
diff --git a/docs/user/docs/projects/models/backups/select-pipeline.png b/docs/docs/user/projects/models/backups/select-pipeline.png
similarity index 100%
rename from docs/user/docs/projects/models/backups/select-pipeline.png
rename to docs/docs/user/projects/models/backups/select-pipeline.png
diff --git a/docs/user/docs/projects/models/backups/select-pipeline.png.license b/docs/docs/user/projects/models/backups/select-pipeline.png.license
similarity index 100%
rename from docs/user/docs/projects/models/backups/select-pipeline.png.license
rename to docs/docs/user/projects/models/backups/select-pipeline.png.license
diff --git a/docs/user/docs/projects/models/backups/setup.md b/docs/docs/user/projects/models/backups/setup.md
similarity index 100%
rename from docs/user/docs/projects/models/backups/setup.md
rename to docs/docs/user/projects/models/backups/setup.md
diff --git a/docs/user/docs/projects/models/backups/trigger.md b/docs/docs/user/projects/models/backups/trigger.md
similarity index 100%
rename from docs/user/docs/projects/models/backups/trigger.md
rename to docs/docs/user/projects/models/backups/trigger.md
diff --git a/docs/user/docs/projects/models/complexity_badge.md b/docs/docs/user/projects/models/complexity_badge.md
similarity index 100%
rename from docs/user/docs/projects/models/complexity_badge.md
rename to docs/docs/user/projects/models/complexity_badge.md
diff --git a/docs/user/docs/projects/models/complexity_badge.png b/docs/docs/user/projects/models/complexity_badge.png
similarity index 100%
rename from docs/user/docs/projects/models/complexity_badge.png
rename to docs/docs/user/projects/models/complexity_badge.png
diff --git a/docs/user/docs/projects/models/complexity_badge.png.license b/docs/docs/user/projects/models/complexity_badge.png.license
similarity index 100%
rename from docs/user/docs/projects/models/complexity_badge.png.license
rename to docs/docs/user/projects/models/complexity_badge.png.license
diff --git a/docs/user/docs/projects/models/create.md b/docs/docs/user/projects/models/create.md
similarity index 100%
rename from docs/user/docs/projects/models/create.md
rename to docs/docs/user/projects/models/create.md
diff --git a/docs/user/docs/projects/models/diagrams/diagram_button.png b/docs/docs/user/projects/models/diagrams/diagram_button.png
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/diagram_button.png
rename to docs/docs/user/projects/models/diagrams/diagram_button.png
diff --git a/docs/user/docs/projects/models/diagrams/diagram_button.png.license b/docs/docs/user/projects/models/diagrams/diagram_button.png.license
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/diagram_button.png.license
rename to docs/docs/user/projects/models/diagrams/diagram_button.png.license
diff --git a/docs/user/docs/projects/models/diagrams/setup_diagram_cache.md b/docs/docs/user/projects/models/diagrams/setup_diagram_cache.md
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/setup_diagram_cache.md
rename to docs/docs/user/projects/models/diagrams/setup_diagram_cache.md
diff --git a/docs/user/docs/projects/models/diagrams/view_diagram_cache.md b/docs/docs/user/projects/models/diagrams/view_diagram_cache.md
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/view_diagram_cache.md
rename to docs/docs/user/projects/models/diagrams/view_diagram_cache.md
diff --git a/docs/user/docs/projects/models/diagrams/view_diagrams.png b/docs/docs/user/projects/models/diagrams/view_diagrams.png
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/view_diagrams.png
rename to docs/docs/user/projects/models/diagrams/view_diagrams.png
diff --git a/docs/user/docs/projects/models/diagrams/view_diagrams.png.license b/docs/docs/user/projects/models/diagrams/view_diagrams.png.license
similarity index 100%
rename from docs/user/docs/projects/models/diagrams/view_diagrams.png.license
rename to docs/docs/user/projects/models/diagrams/view_diagrams.png.license
diff --git a/docs/user/docs/projects/models/metadata.md b/docs/docs/user/projects/models/metadata.md
similarity index 100%
rename from docs/user/docs/projects/models/metadata.md
rename to docs/docs/user/projects/models/metadata.md
diff --git a/docs/user/docs/projects/models/sources/open-modelsources.png b/docs/docs/user/projects/models/sources/open-modelsources.png
similarity index 100%
rename from docs/user/docs/projects/models/sources/open-modelsources.png
rename to docs/docs/user/projects/models/sources/open-modelsources.png
diff --git a/docs/user/docs/projects/models/sources/open-modelsources.png.license b/docs/docs/user/projects/models/sources/open-modelsources.png.license
similarity index 100%
rename from docs/user/docs/projects/models/sources/open-modelsources.png.license
rename to docs/docs/user/projects/models/sources/open-modelsources.png.license
diff --git a/docs/user/docs/projects/models/sources/t4c.md b/docs/docs/user/projects/models/sources/t4c.md
similarity index 100%
rename from docs/user/docs/projects/models/sources/t4c.md
rename to docs/docs/user/projects/models/sources/t4c.md
diff --git a/docs/user/docs/projects/models/sources/use-existing-repository.png b/docs/docs/user/projects/models/sources/use-existing-repository.png
similarity index 100%
rename from docs/user/docs/projects/models/sources/use-existing-repository.png
rename to docs/docs/user/projects/models/sources/use-existing-repository.png
diff --git a/docs/user/docs/projects/models/sources/use-existing-repository.png.license b/docs/docs/user/projects/models/sources/use-existing-repository.png.license
similarity index 100%
rename from docs/user/docs/projects/models/sources/use-existing-repository.png.license
rename to docs/docs/user/projects/models/sources/use-existing-repository.png.license
diff --git a/docs/user/docs/projects/models/update.md b/docs/docs/user/projects/models/update.md
similarity index 100%
rename from docs/user/docs/projects/models/update.md
rename to docs/docs/user/projects/models/update.md
diff --git a/docs/user/docs/projects/roles.md b/docs/docs/user/projects/roles.md
similarity index 100%
rename from docs/user/docs/projects/roles.md
rename to docs/docs/user/projects/roles.md
diff --git a/docs/user/docs/sessions/close_welcome_dialog.png b/docs/docs/user/sessions/close_welcome_dialog.png
similarity index 100%
rename from docs/user/docs/sessions/close_welcome_dialog.png
rename to docs/docs/user/sessions/close_welcome_dialog.png
diff --git a/docs/user/docs/sessions/close_welcome_dialog.png.license b/docs/docs/user/sessions/close_welcome_dialog.png.license
similarity index 100%
rename from docs/user/docs/sessions/close_welcome_dialog.png.license
rename to docs/docs/user/sessions/close_welcome_dialog.png.license
diff --git a/docs/user/docs/sessions/files/download-button.png b/docs/docs/user/sessions/files/download-button.png
similarity index 100%
rename from docs/user/docs/sessions/files/download-button.png
rename to docs/docs/user/sessions/files/download-button.png
diff --git a/docs/user/docs/sessions/files/download-button.png.license b/docs/docs/user/sessions/files/download-button.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/download-button.png.license
rename to docs/docs/user/sessions/files/download-button.png.license
diff --git a/docs/user/docs/sessions/files/download-file-button.png b/docs/docs/user/sessions/files/download-file-button.png
similarity index 100%
rename from docs/user/docs/sessions/files/download-file-button.png
rename to docs/docs/user/sessions/files/download-file-button.png
diff --git a/docs/user/docs/sessions/files/download-file-button.png.license b/docs/docs/user/sessions/files/download-file-button.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/download-file-button.png.license
rename to docs/docs/user/sessions/files/download-file-button.png.license
diff --git a/docs/user/docs/sessions/files/file-browser-button.png b/docs/docs/user/sessions/files/file-browser-button.png
similarity index 100%
rename from docs/user/docs/sessions/files/file-browser-button.png
rename to docs/docs/user/sessions/files/file-browser-button.png
diff --git a/docs/user/docs/sessions/files/file-browser-button.png.license b/docs/docs/user/sessions/files/file-browser-button.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/file-browser-button.png.license
rename to docs/docs/user/sessions/files/file-browser-button.png.license
diff --git a/docs/user/docs/sessions/files/files-to-upload.png b/docs/docs/user/sessions/files/files-to-upload.png
similarity index 100%
rename from docs/user/docs/sessions/files/files-to-upload.png
rename to docs/docs/user/sessions/files/files-to-upload.png
diff --git a/docs/user/docs/sessions/files/files-to-upload.png.license b/docs/docs/user/sessions/files/files-to-upload.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/files-to-upload.png.license
rename to docs/docs/user/sessions/files/files-to-upload.png.license
diff --git a/docs/user/docs/sessions/files/files.md b/docs/docs/user/sessions/files/files.md
similarity index 100%
rename from docs/user/docs/sessions/files/files.md
rename to docs/docs/user/sessions/files/files.md
diff --git a/docs/user/docs/sessions/files/upload-button.png b/docs/docs/user/sessions/files/upload-button.png
similarity index 100%
rename from docs/user/docs/sessions/files/upload-button.png
rename to docs/docs/user/sessions/files/upload-button.png
diff --git a/docs/user/docs/sessions/files/upload-button.png.license b/docs/docs/user/sessions/files/upload-button.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/upload-button.png.license
rename to docs/docs/user/sessions/files/upload-button.png.license
diff --git a/docs/user/docs/sessions/files/upload-file-button.png b/docs/docs/user/sessions/files/upload-file-button.png
similarity index 100%
rename from docs/user/docs/sessions/files/upload-file-button.png
rename to docs/docs/user/sessions/files/upload-file-button.png
diff --git a/docs/user/docs/sessions/files/upload-file-button.png.license b/docs/docs/user/sessions/files/upload-file-button.png.license
similarity index 100%
rename from docs/user/docs/sessions/files/upload-file-button.png.license
rename to docs/docs/user/sessions/files/upload-file-button.png.license
diff --git a/docs/user/docs/sessions/flows/git.md b/docs/docs/user/sessions/flows/git.md
similarity index 100%
rename from docs/user/docs/sessions/flows/git.md
rename to docs/docs/user/sessions/flows/git.md
diff --git a/docs/user/docs/sessions/flows/screenshots/cap-test-conn.jpg b/docs/docs/user/sessions/flows/screenshots/cap-test-conn.jpg
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/cap-test-conn.jpg
rename to docs/docs/user/sessions/flows/screenshots/cap-test-conn.jpg
diff --git a/docs/user/docs/sessions/flows/screenshots/cap-test-conn.jpg.license b/docs/docs/user/sessions/flows/screenshots/cap-test-conn.jpg.license
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/cap-test-conn.jpg.license
rename to docs/docs/user/sessions/flows/screenshots/cap-test-conn.jpg.license
diff --git a/docs/user/docs/sessions/flows/screenshots/connection-example.jpg b/docs/docs/user/sessions/flows/screenshots/connection-example.jpg
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/connection-example.jpg
rename to docs/docs/user/sessions/flows/screenshots/connection-example.jpg
diff --git a/docs/user/docs/sessions/flows/screenshots/connection-example.jpg.license b/docs/docs/user/sessions/flows/screenshots/connection-example.jpg.license
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/connection-example.jpg.license
rename to docs/docs/user/sessions/flows/screenshots/connection-example.jpg.license
diff --git a/docs/user/docs/sessions/flows/screenshots/session-password.png b/docs/docs/user/sessions/flows/screenshots/session-password.png
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/session-password.png
rename to docs/docs/user/sessions/flows/screenshots/session-password.png
diff --git a/docs/user/docs/sessions/flows/screenshots/session-password.png.license b/docs/docs/user/sessions/flows/screenshots/session-password.png.license
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/session-password.png.license
rename to docs/docs/user/sessions/flows/screenshots/session-password.png.license
diff --git a/docs/user/docs/sessions/flows/screenshots/step_1.png b/docs/docs/user/sessions/flows/screenshots/step_1.png
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/step_1.png
rename to docs/docs/user/sessions/flows/screenshots/step_1.png
diff --git a/docs/user/docs/sessions/flows/screenshots/step_1.png.license b/docs/docs/user/sessions/flows/screenshots/step_1.png.license
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/step_1.png.license
rename to docs/docs/user/sessions/flows/screenshots/step_1.png.license
diff --git a/docs/user/docs/sessions/flows/screenshots/step_2.png b/docs/docs/user/sessions/flows/screenshots/step_2.png
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/step_2.png
rename to docs/docs/user/sessions/flows/screenshots/step_2.png
diff --git a/docs/user/docs/sessions/flows/screenshots/step_2.png.license b/docs/docs/user/sessions/flows/screenshots/step_2.png.license
similarity index 100%
rename from docs/user/docs/sessions/flows/screenshots/step_2.png.license
rename to docs/docs/user/sessions/flows/screenshots/step_2.png.license
diff --git a/docs/user/docs/sessions/flows/t4c.md b/docs/docs/user/sessions/flows/t4c.md
similarity index 100%
rename from docs/user/docs/sessions/flows/t4c.md
rename to docs/docs/user/sessions/flows/t4c.md
diff --git a/docs/user/docs/sessions/jupyter/collaboration.md b/docs/docs/user/sessions/jupyter/collaboration.md
similarity index 100%
rename from docs/user/docs/sessions/jupyter/collaboration.md
rename to docs/docs/user/sessions/jupyter/collaboration.md
diff --git a/docs/user/docs/sessions/jupyter/jupyter-collaboration.mp4 b/docs/docs/user/sessions/jupyter/jupyter-collaboration.mp4
similarity index 100%
rename from docs/user/docs/sessions/jupyter/jupyter-collaboration.mp4
rename to docs/docs/user/sessions/jupyter/jupyter-collaboration.mp4
diff --git a/docs/user/docs/sessions/jupyter/jupyter-collaboration.mp4.license b/docs/docs/user/sessions/jupyter/jupyter-collaboration.mp4.license
similarity index 100%
rename from docs/user/docs/sessions/jupyter/jupyter-collaboration.mp4.license
rename to docs/docs/user/sessions/jupyter/jupyter-collaboration.mp4.license
diff --git a/docs/user/docs/sessions/reconnect.md b/docs/docs/user/sessions/reconnect.md
similarity index 100%
rename from docs/user/docs/sessions/reconnect.md
rename to docs/docs/user/sessions/reconnect.md
diff --git a/docs/user/docs/sessions/request.md b/docs/docs/user/sessions/request.md
similarity index 100%
rename from docs/user/docs/sessions/request.md
rename to docs/docs/user/sessions/request.md
diff --git a/docs/user/docs/sessions/request_persistent_session.png b/docs/docs/user/sessions/request_persistent_session.png
similarity index 100%
rename from docs/user/docs/sessions/request_persistent_session.png
rename to docs/docs/user/sessions/request_persistent_session.png
diff --git a/docs/user/docs/sessions/request_persistent_session.png.license b/docs/docs/user/sessions/request_persistent_session.png.license
similarity index 100%
rename from docs/user/docs/sessions/request_persistent_session.png.license
rename to docs/docs/user/sessions/request_persistent_session.png.license
diff --git a/docs/user/docs/sessions/screenshot/clipboard.png b/docs/docs/user/sessions/screenshot/clipboard.png
similarity index 100%
rename from docs/user/docs/sessions/screenshot/clipboard.png
rename to docs/docs/user/sessions/screenshot/clipboard.png
diff --git a/docs/user/docs/sessions/screenshot/clipboard.png.license b/docs/docs/user/sessions/screenshot/clipboard.png.license
similarity index 100%
rename from docs/user/docs/sessions/screenshot/clipboard.png.license
rename to docs/docs/user/sessions/screenshot/clipboard.png.license
diff --git a/docs/user/docs/sessions/screenshot/screenshots.md b/docs/docs/user/sessions/screenshot/screenshots.md
similarity index 100%
rename from docs/user/docs/sessions/screenshot/screenshots.md
rename to docs/docs/user/sessions/screenshot/screenshots.md
diff --git a/docs/user/docs/sessions/terminate.md b/docs/docs/user/sessions/terminate.md
similarity index 100%
rename from docs/user/docs/sessions/terminate.md
rename to docs/docs/user/sessions/terminate.md
diff --git a/docs/user/docs/sessions/troubleshooting.md b/docs/docs/user/sessions/troubleshooting.md
similarity index 100%
rename from docs/user/docs/sessions/troubleshooting.md
rename to docs/docs/user/sessions/troubleshooting.md
diff --git a/docs/user/docs/sessions/types.md b/docs/docs/user/sessions/types.md
similarity index 100%
rename from docs/user/docs/sessions/types.md
rename to docs/docs/user/sessions/types.md
diff --git a/docs/user/docs/sessions/types/persistent.md b/docs/docs/user/sessions/types/persistent.md
similarity index 100%
rename from docs/user/docs/sessions/types/persistent.md
rename to docs/docs/user/sessions/types/persistent.md
diff --git a/docs/user/docs/sessions/types/read-only.md b/docs/docs/user/sessions/types/read-only.md
similarity index 100%
rename from docs/user/docs/sessions/types/read-only.md
rename to docs/docs/user/sessions/types/read-only.md
diff --git a/docs/user/docs/sessions/types/screenshots/active-sessions.png b/docs/docs/user/sessions/types/screenshots/active-sessions.png
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/active-sessions.png
rename to docs/docs/user/sessions/types/screenshots/active-sessions.png
diff --git a/docs/user/docs/sessions/types/screenshots/active-sessions.png.license b/docs/docs/user/sessions/types/screenshots/active-sessions.png.license
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/active-sessions.png.license
rename to docs/docs/user/sessions/types/screenshots/active-sessions.png.license
diff --git a/docs/user/docs/sessions/types/screenshots/cap-test-conn.jpg b/docs/docs/user/sessions/types/screenshots/cap-test-conn.jpg
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/cap-test-conn.jpg
rename to docs/docs/user/sessions/types/screenshots/cap-test-conn.jpg
diff --git a/docs/user/docs/sessions/types/screenshots/cap-test-conn.jpg.license b/docs/docs/user/sessions/types/screenshots/cap-test-conn.jpg.license
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/cap-test-conn.jpg.license
rename to docs/docs/user/sessions/types/screenshots/cap-test-conn.jpg.license
diff --git a/docs/user/docs/sessions/types/screenshots/connect-to-session.png b/docs/docs/user/sessions/types/screenshots/connect-to-session.png
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/connect-to-session.png
rename to docs/docs/user/sessions/types/screenshots/connect-to-session.png
diff --git a/docs/user/docs/sessions/types/screenshots/connect-to-session.png.license b/docs/docs/user/sessions/types/screenshots/connect-to-session.png.license
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/connect-to-session.png.license
rename to docs/docs/user/sessions/types/screenshots/connect-to-session.png.license
diff --git a/docs/user/docs/sessions/types/screenshots/request-session.png b/docs/docs/user/sessions/types/screenshots/request-session.png
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/request-session.png
rename to docs/docs/user/sessions/types/screenshots/request-session.png
diff --git a/docs/user/docs/sessions/types/screenshots/request-session.png.license b/docs/docs/user/sessions/types/screenshots/request-session.png.license
similarity index 100%
rename from docs/user/docs/sessions/types/screenshots/request-session.png.license
rename to docs/docs/user/sessions/types/screenshots/request-session.png.license
diff --git a/docs/user/docs/settings/model-sources/git.md b/docs/docs/user/settings/model-sources/git.md
similarity index 100%
rename from docs/user/docs/settings/model-sources/git.md
rename to docs/docs/user/settings/model-sources/git.md
diff --git a/docs/user/docs/settings/model-sources/t4c.md b/docs/docs/user/settings/model-sources/t4c.md
similarity index 100%
rename from docs/user/docs/settings/model-sources/t4c.md
rename to docs/docs/user/settings/model-sources/t4c.md
diff --git a/docs/user/docs/settings/monitoring.md b/docs/docs/user/settings/monitoring.md
similarity index 100%
rename from docs/user/docs/settings/monitoring.md
rename to docs/docs/user/settings/monitoring.md
diff --git a/docs/user/docs/settings/tools/index.md b/docs/docs/user/settings/tools/index.md
similarity index 100%
rename from docs/user/docs/settings/tools/index.md
rename to docs/docs/user/settings/tools/index.md
diff --git a/docs/user/docs/settings/tools/model_restrictions.png b/docs/docs/user/settings/tools/model_restrictions.png
similarity index 100%
rename from docs/user/docs/settings/tools/model_restrictions.png
rename to docs/docs/user/settings/tools/model_restrictions.png
diff --git a/docs/user/docs/settings/tools/model_restrictions.png.license b/docs/docs/user/settings/tools/model_restrictions.png.license
similarity index 100%
rename from docs/user/docs/settings/tools/model_restrictions.png.license
rename to docs/docs/user/settings/tools/model_restrictions.png.license
diff --git a/docs/user/docs/settings/tools/model_restrictions_pv.png b/docs/docs/user/settings/tools/model_restrictions_pv.png
similarity index 100%
rename from docs/user/docs/settings/tools/model_restrictions_pv.png
rename to docs/docs/user/settings/tools/model_restrictions_pv.png
diff --git a/docs/user/docs/settings/tools/model_restrictions_pv.png.license b/docs/docs/user/settings/tools/model_restrictions_pv.png.license
similarity index 100%
rename from docs/user/docs/settings/tools/model_restrictions_pv.png.license
rename to docs/docs/user/settings/tools/model_restrictions_pv.png.license
diff --git a/docs/user/docs/settings/tools/pure_variants.md b/docs/docs/user/settings/tools/pure_variants.md
similarity index 100%
rename from docs/user/docs/settings/tools/pure_variants.md
rename to docs/docs/user/settings/tools/pure_variants.md
diff --git a/docs/user/docs/tokens.md b/docs/docs/user/tokens.md
similarity index 100%
rename from docs/user/docs/tokens.md
rename to docs/docs/user/tokens.md
diff --git a/docs/user/docs/tools/capella/introduction.md b/docs/docs/user/tools/capella/introduction.md
similarity index 100%
rename from docs/user/docs/tools/capella/introduction.md
rename to docs/docs/user/tools/capella/introduction.md
diff --git a/docs/user/docs/tools/capella/t4c-git-compare.md b/docs/docs/user/tools/capella/t4c-git-compare.md
similarity index 100%
rename from docs/user/docs/tools/capella/t4c-git-compare.md
rename to docs/docs/user/tools/capella/t4c-git-compare.md
diff --git a/docs/user/docs/tools/capella/teamforcapella/add-repository.png b/docs/docs/user/tools/capella/teamforcapella/add-repository.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/add-repository.png
rename to docs/docs/user/tools/capella/teamforcapella/add-repository.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/add-repository.png.license b/docs/docs/user/tools/capella/teamforcapella/add-repository.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/add-repository.png.license
rename to docs/docs/user/tools/capella/teamforcapella/add-repository.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/backup-migration.png b/docs/docs/user/tools/capella/teamforcapella/backup-migration.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/backup-migration.png
rename to docs/docs/user/tools/capella/teamforcapella/backup-migration.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/backup-migration.png.license b/docs/docs/user/tools/capella/teamforcapella/backup-migration.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/backup-migration.png.license
rename to docs/docs/user/tools/capella/teamforcapella/backup-migration.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/capella-project-to-repository.png b/docs/docs/user/tools/capella/teamforcapella/export/capella-project-to-repository.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/capella-project-to-repository.png
rename to docs/docs/user/tools/capella/teamforcapella/export/capella-project-to-repository.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/capella-project-to-repository.png.license b/docs/docs/user/tools/capella/teamforcapella/export/capella-project-to-repository.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/capella-project-to-repository.png.license
rename to docs/docs/user/tools/capella/teamforcapella/export/capella-project-to-repository.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/export-repository-selection.png b/docs/docs/user/tools/capella/teamforcapella/export/export-repository-selection.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/export-repository-selection.png
rename to docs/docs/user/tools/capella/teamforcapella/export/export-repository-selection.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/export-repository-selection.png.license b/docs/docs/user/tools/capella/teamforcapella/export/export-repository-selection.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/export-repository-selection.png.license
rename to docs/docs/user/tools/capella/teamforcapella/export/export-repository-selection.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/export-to-t4c.md b/docs/docs/user/tools/capella/teamforcapella/export/export-to-t4c.md
similarity index 87%
rename from docs/user/docs/tools/capella/teamforcapella/export/export-to-t4c.md
rename to docs/docs/user/tools/capella/teamforcapella/export/export-to-t4c.md
index 65e93fba43..9fc2e86298 100644
--- a/docs/user/docs/tools/capella/teamforcapella/export/export-to-t4c.md
+++ b/docs/docs/user/tools/capella/teamforcapella/export/export-to-t4c.md
@@ -19,8 +19,9 @@
select `Capella Project to Remote Repository` and confirm with `Next`:
![Capella Project to Remote Repository](./capella-project-to-repository.png)
1. Select the repository from the dropdown menu. Click on the `Test connection`
- button and enter your [session token](/sessions/flows/t4c.md). Click on
- `Next`. ![Select repository for export](./export-repository-selection.png)
+ button and enter your [session token](../../../../sessions/flows/t4c.md).
+ Click on `Next`.
+ ![Select repository for export](./export-repository-selection.png)
1. Select the overwrite strategy. If the project doesn't exist on the server
yet, choose `Replace`. Otherwise, select `Merge`.
![Overwrite strategy](./select-overwrite-strategy.png)
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/select-overwrite-strategy.png b/docs/docs/user/tools/capella/teamforcapella/export/select-overwrite-strategy.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/select-overwrite-strategy.png
rename to docs/docs/user/tools/capella/teamforcapella/export/select-overwrite-strategy.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/export/select-overwrite-strategy.png.license b/docs/docs/user/tools/capella/teamforcapella/export/select-overwrite-strategy.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/export/select-overwrite-strategy.png.license
rename to docs/docs/user/tools/capella/teamforcapella/export/select-overwrite-strategy.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/capella-import-dialog.png b/docs/docs/user/tools/capella/teamforcapella/import/capella-import-dialog.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/capella-import-dialog.png
rename to docs/docs/user/tools/capella/teamforcapella/import/capella-import-dialog.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/capella-import-dialog.png.license b/docs/docs/user/tools/capella/teamforcapella/import/capella-import-dialog.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/capella-import-dialog.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/capella-import-dialog.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/change-local-project-name.png b/docs/docs/user/tools/capella/teamforcapella/import/change-local-project-name.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/change-local-project-name.png
rename to docs/docs/user/tools/capella/teamforcapella/import/change-local-project-name.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/change-local-project-name.png.license b/docs/docs/user/tools/capella/teamforcapella/import/change-local-project-name.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/change-local-project-name.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/change-local-project-name.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/import-all-images.png b/docs/docs/user/tools/capella/teamforcapella/import/import-all-images.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/import-all-images.png
rename to docs/docs/user/tools/capella/teamforcapella/import/import-all-images.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/import-all-images.png.license b/docs/docs/user/tools/capella/teamforcapella/import/import-all-images.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/import-all-images.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/import-all-images.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/import-from-t4c.md b/docs/docs/user/tools/capella/teamforcapella/import/import-from-t4c.md
similarity index 96%
rename from docs/user/docs/tools/capella/teamforcapella/import/import-from-t4c.md
rename to docs/docs/user/tools/capella/teamforcapella/import/import-from-t4c.md
index 75e39603f8..de272b128f 100644
--- a/docs/user/docs/tools/capella/teamforcapella/import/import-from-t4c.md
+++ b/docs/docs/user/tools/capella/teamforcapella/import/import-from-t4c.md
@@ -19,7 +19,7 @@
confirm with `Next`.
![Import project from remote repository](./project-from-remote-repository.png)
1. Select the repository from the dropdown menu. Click on the `Test connection`
- button and enter your [session token](/sessions/flows/t4c.md).
+ button and enter your [session token](../../../../sessions/flows/t4c.md).
![Select repository for import](./import-repository-selection.png)
1. Click on `Next` .
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/import-repository-selection.png b/docs/docs/user/tools/capella/teamforcapella/import/import-repository-selection.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/import-repository-selection.png
rename to docs/docs/user/tools/capella/teamforcapella/import/import-repository-selection.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/import-repository-selection.png.license b/docs/docs/user/tools/capella/teamforcapella/import/import-repository-selection.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/import-repository-selection.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/import-repository-selection.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/imported-resources-message.png b/docs/docs/user/tools/capella/teamforcapella/import/imported-resources-message.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/imported-resources-message.png
rename to docs/docs/user/tools/capella/teamforcapella/import/imported-resources-message.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/imported-resources-message.png.license b/docs/docs/user/tools/capella/teamforcapella/import/imported-resources-message.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/imported-resources-message.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/imported-resources-message.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png b/docs/docs/user/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png
rename to docs/docs/user/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png.license b/docs/docs/user/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/project-already-exists-in-workspace.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/project-from-remote-repository.png b/docs/docs/user/tools/capella/teamforcapella/import/project-from-remote-repository.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/project-from-remote-repository.png
rename to docs/docs/user/tools/capella/teamforcapella/import/project-from-remote-repository.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/project-from-remote-repository.png.license b/docs/docs/user/tools/capella/teamforcapella/import/project-from-remote-repository.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/project-from-remote-repository.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/project-from-remote-repository.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/use-default-location.png b/docs/docs/user/tools/capella/teamforcapella/import/use-default-location.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/use-default-location.png
rename to docs/docs/user/tools/capella/teamforcapella/import/use-default-location.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/import/use-default-location.png.license b/docs/docs/user/tools/capella/teamforcapella/import/use-default-location.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/import/use-default-location.png.license
rename to docs/docs/user/tools/capella/teamforcapella/import/use-default-location.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/migrate-capella-model.png b/docs/docs/user/tools/capella/teamforcapella/migrate-capella-model.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/migrate-capella-model.png
rename to docs/docs/user/tools/capella/teamforcapella/migrate-capella-model.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/migrate-capella-model.png.license b/docs/docs/user/tools/capella/teamforcapella/migrate-capella-model.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/migrate-capella-model.png.license
rename to docs/docs/user/tools/capella/teamforcapella/migrate-capella-model.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png b/docs/docs/user/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/activate-t4c-administration-guide.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/add-new-cdo-session.png b/docs/docs/user/tools/capella/teamforcapella/project-management/add-new-cdo-session.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/add-new-cdo-session.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/add-new-cdo-session.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/add-new-cdo-session.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/add-new-cdo-session.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/add-new-cdo-session.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/add-new-cdo-session.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/delete-t4c-project.png b/docs/docs/user/tools/capella/teamforcapella/project-management/delete-t4c-project.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/delete-t4c-project.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/delete-t4c-project.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/delete-t4c-project.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/delete-t4c-project.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/delete-t4c-project.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/delete-t4c-project.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/find-out-repository-host.png b/docs/docs/user/tools/capella/teamforcapella/project-management/find-out-repository-host.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/find-out-repository-host.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/find-out-repository-host.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/find-out-repository-host.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/find-out-repository-host.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/find-out-repository-host.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/find-out-repository-host.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-session.png b/docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-session.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-session.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-session.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-session.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-session.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-session.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-session.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-transaction.png b/docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-transaction.png
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-transaction.png
rename to docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-transaction.png
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-transaction.png.license b/docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-transaction.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/open-cdo-transaction.png.license
rename to docs/docs/user/tools/capella/teamforcapella/project-management/open-cdo-transaction.png.license
diff --git a/docs/user/docs/tools/capella/teamforcapella/project-management/project-management.md b/docs/docs/user/tools/capella/teamforcapella/project-management/project-management.md
similarity index 96%
rename from docs/user/docs/tools/capella/teamforcapella/project-management/project-management.md
rename to docs/docs/user/tools/capella/teamforcapella/project-management/project-management.md
index 14ec951dff..6b34dbb7fd 100644
--- a/docs/user/docs/tools/capella/teamforcapella/project-management/project-management.md
+++ b/docs/docs/user/tools/capella/teamforcapella/project-management/project-management.md
@@ -39,7 +39,7 @@ repositories, refer to the
1. Global administrators can navigate to `Profile` > `Settings` >
`Model sources` > `TeamForCapella` > Select the instance > `Host`.
1. Project managers can use the TeamForCapella connection flow described in
- the [Connect to a TeamForCapella repository](/sessions/flows/t4c.md)
+ the [Connect to a TeamForCapella repository](../../../../sessions/flows/t4c.md)
guide. In the `Connect to Shared Project` dialog, select the repository,
expand "Connection information" and copy the "Repository host".
![Find out T4C server host](./find-out-repository-host.png)
diff --git a/docs/user/docs/tools/capella/teamforcapella/repository-management.md b/docs/docs/user/tools/capella/teamforcapella/repository-management.md
similarity index 100%
rename from docs/user/docs/tools/capella/teamforcapella/repository-management.md
rename to docs/docs/user/tools/capella/teamforcapella/repository-management.md
diff --git a/docs/user/docs/tools/capella/teamforcapella/update.md b/docs/docs/user/tools/capella/teamforcapella/update.md
similarity index 78%
rename from docs/user/docs/tools/capella/teamforcapella/update.md
rename to docs/docs/user/tools/capella/teamforcapella/update.md
index 76cfcf2c19..80288f30c7 100644
--- a/docs/user/docs/tools/capella/teamforcapella/update.md
+++ b/docs/docs/user/tools/capella/teamforcapella/update.md
@@ -16,16 +16,16 @@
[Import a model from TeamForCapella](./import/import-from-t4c.md)
1. Terminate the session.
1. Remove existing backups from TeamForCapella:
- [Remove a (nightly) backup](/projects/models/backups/remove.md)
+ [Remove a (nightly) backup](../../../projects/models/backups/remove.md)
1. Add a new repository in the TeamForCapella settings:
[Add a new TeamForCapella repository](./repository-management.md#add-a-new-teamforcapella-repository)
1. Unlink the old TeamForCapella repository (old Capella version) from your
model:
- [Unlink a TeamForCapella repository](/projects/models/sources/t4c.md#unlink-a-teamforcapella-repository-from-a-project-model)
+ [Unlink a TeamForCapella repository](../../../projects/models/sources/t4c.md#unlink-a-teamforcapella-repository-from-a-project-model)
1. Link the new TeamForCapella repository (new Capella version) to your model:
- [Link a TeamForCapella repository](/projects/models/sources/t4c.md#link-a-teamforcapella-repository-to-a-project-model)
+ [Link a TeamForCapella repository](../../../projects/models/sources/t4c.md#link-a-teamforcapella-repository-to-a-project-model)
1. Update the model version to the newer Capella version:
- [Change model metadata](/projects/models/metadata.md)
+ [Change model metadata](../../../projects/models/metadata.md)
1. Create a new session with the new Capella version.
1. In your persistent workspace, execute the following steps:
@@ -40,4 +40,4 @@
from TeamForCapella:
[Export a model to TeamForCapella](./export/export-to-t4c.md)
1. Recreate the backup from TeamForCapella:
- [Set up a TeamForCapella backup](/projects/models/backups/setup.md)
+ [Set up a TeamForCapella backup](../../../projects/models/backups/setup.md)
diff --git a/docs/user/docs/tools/capella/working-with-git.md b/docs/docs/user/tools/capella/working-with-git.md
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git.md
rename to docs/docs/user/tools/capella/working-with-git.md
diff --git a/docs/user/docs/tools/capella/working-with-git/create-merge-branch.png b/docs/docs/user/tools/capella/working-with-git/create-merge-branch.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/create-merge-branch.png
rename to docs/docs/user/tools/capella/working-with-git/create-merge-branch.png
diff --git a/docs/user/docs/tools/capella/working-with-git/create-merge-branch.png.license b/docs/docs/user/tools/capella/working-with-git/create-merge-branch.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/create-merge-branch.png.license
rename to docs/docs/user/tools/capella/working-with-git/create-merge-branch.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/local-destination.png b/docs/docs/user/tools/capella/working-with-git/local-destination.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/local-destination.png
rename to docs/docs/user/tools/capella/working-with-git/local-destination.png
diff --git a/docs/user/docs/tools/capella/working-with-git/local-destination.png.license b/docs/docs/user/tools/capella/working-with-git/local-destination.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/local-destination.png.license
rename to docs/docs/user/tools/capella/working-with-git/local-destination.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/open-reset-view.png b/docs/docs/user/tools/capella/working-with-git/open-reset-view.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/open-reset-view.png
rename to docs/docs/user/tools/capella/working-with-git/open-reset-view.png
diff --git a/docs/user/docs/tools/capella/working-with-git/open-reset-view.png.license b/docs/docs/user/tools/capella/working-with-git/open-reset-view.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/open-reset-view.png.license
rename to docs/docs/user/tools/capella/working-with-git/open-reset-view.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/reset-hard-view.png b/docs/docs/user/tools/capella/working-with-git/reset-hard-view.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/reset-hard-view.png
rename to docs/docs/user/tools/capella/working-with-git/reset-hard-view.png
diff --git a/docs/user/docs/tools/capella/working-with-git/reset-hard-view.png.license b/docs/docs/user/tools/capella/working-with-git/reset-hard-view.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/reset-hard-view.png.license
rename to docs/docs/user/tools/capella/working-with-git/reset-hard-view.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/search-git-repository-view.png b/docs/docs/user/tools/capella/working-with-git/search-git-repository-view.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/search-git-repository-view.png
rename to docs/docs/user/tools/capella/working-with-git/search-git-repository-view.png
diff --git a/docs/user/docs/tools/capella/working-with-git/search-git-repository-view.png.license b/docs/docs/user/tools/capella/working-with-git/search-git-repository-view.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/search-git-repository-view.png.license
rename to docs/docs/user/tools/capella/working-with-git/search-git-repository-view.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/search-view.png b/docs/docs/user/tools/capella/working-with-git/search-view.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/search-view.png
rename to docs/docs/user/tools/capella/working-with-git/search-view.png
diff --git a/docs/user/docs/tools/capella/working-with-git/search-view.png.license b/docs/docs/user/tools/capella/working-with-git/search-view.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/search-view.png.license
rename to docs/docs/user/tools/capella/working-with-git/search-view.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/staged-changes.png b/docs/docs/user/tools/capella/working-with-git/staged-changes.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/staged-changes.png
rename to docs/docs/user/tools/capella/working-with-git/staged-changes.png
diff --git a/docs/user/docs/tools/capella/working-with-git/staged-changes.png.license b/docs/docs/user/tools/capella/working-with-git/staged-changes.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/staged-changes.png.license
rename to docs/docs/user/tools/capella/working-with-git/staged-changes.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/switch-branch-v1.png b/docs/docs/user/tools/capella/working-with-git/switch-branch-v1.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/switch-branch-v1.png
rename to docs/docs/user/tools/capella/working-with-git/switch-branch-v1.png
diff --git a/docs/user/docs/tools/capella/working-with-git/switch-branch-v1.png.license b/docs/docs/user/tools/capella/working-with-git/switch-branch-v1.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/switch-branch-v1.png.license
rename to docs/docs/user/tools/capella/working-with-git/switch-branch-v1.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/switch-branch-v2.png b/docs/docs/user/tools/capella/working-with-git/switch-branch-v2.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/switch-branch-v2.png
rename to docs/docs/user/tools/capella/working-with-git/switch-branch-v2.png
diff --git a/docs/user/docs/tools/capella/working-with-git/switch-branch-v2.png.license b/docs/docs/user/tools/capella/working-with-git/switch-branch-v2.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/switch-branch-v2.png.license
rename to docs/docs/user/tools/capella/working-with-git/switch-branch-v2.png.license
diff --git a/docs/user/docs/tools/capella/working-with-git/unstaged-changes.png b/docs/docs/user/tools/capella/working-with-git/unstaged-changes.png
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/unstaged-changes.png
rename to docs/docs/user/tools/capella/working-with-git/unstaged-changes.png
diff --git a/docs/user/docs/tools/capella/working-with-git/unstaged-changes.png.license b/docs/docs/user/tools/capella/working-with-git/unstaged-changes.png.license
similarity index 100%
rename from docs/user/docs/tools/capella/working-with-git/unstaged-changes.png.license
rename to docs/docs/user/tools/capella/working-with-git/unstaged-changes.png.license
diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml
new file mode 100644
index 0000000000..85c6317c01
--- /dev/null
+++ b/docs/mkdocs.yml
@@ -0,0 +1,127 @@
+# SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
+# SPDX-License-Identifier: Apache-2.0
+
+site_name: Capella Collaboration Manager Documentation
+theme:
+ name: material
+ features:
+ - content.code.copy
+ - content.code.annotate
+ - navigation.tabs
+
+extra_css:
+ - style.css
+
+nav:
+ - User documentation:
+ - Introduction: user/index.md
+ - Projects:
+ - Get access to a project: user/projects/access.md
+ - Add a user to a project: user/projects/add-user.md
+ - Request a new project: user/projects/create.md
+ - Roles: user/projects/roles.md
+ - Models:
+ - Create a model: user/projects/models/create.md
+ - Update a model to a newer version: user/projects/models/update.md
+ - Update model metadata: user/projects/models/metadata.md
+ - Model sources:
+ - TeamForCapella: user/projects/models/sources/t4c.md
+ - Backups:
+ - Setup a model backup: user/projects/models/backups/setup.md
+ - Trigger a model backup: user/projects/models/backups/trigger.md
+ - Remove a model backup: user/projects/models/backups/remove.md
+ - Diagram cache:
+ - Setup diagram cache: user/projects/models/diagrams/setup_diagram_cache.md
+ - View diagram cache: user/projects/models/diagrams/view_diagram_cache.md
+ - Model complexity badge: user/projects/models/complexity_badge.md
+ - Sessions:
+ - Session Types:
+ - Overview: user/sessions/types.md
+ - Persistent: user/sessions/types/persistent.md
+ - Read-Only: user/sessions/types/read-only.md
+ - Request Session: user/sessions/request.md
+ - (Re-)Connect to Session: user/sessions/reconnect.md
+ - Terminate Session: user/sessions/terminate.md
+ - Taking Screenshots: user/sessions/screenshot/screenshots.md
+ - Flows:
+ - Git: user/sessions/flows/git.md
+ - TeamForCapella: user/sessions/flows/t4c.md
+ - Files browser: user/sessions/files/files.md
+ - Troubleshooting: user/sessions/troubleshooting.md
+ - Jupyter:
+ - Collaboration: user/sessions/jupyter/collaboration.md
+ - Settings:
+ - Monitoring: user/settings/monitoring.md
+ - Tools:
+ - General: user/settings/tools/index.md
+ - pure::variants: user/settings/tools/pure_variants.md
+ - Model sources:
+ - Git: user/settings/model-sources/git.md
+ - T4C: user/settings/model-sources/t4c.md
+ - Alerts:
+ - Create an alert: user/alerts/create.md
+ - Tools:
+ - Capella:
+ - Introduction: user/tools/capella/introduction.md
+ - Co-working methods: user/tools/capella/t4c-git-compare.md
+ - TeamForCapella:
+ - Import a model from TeamForCapella: user/tools/capella/teamforcapella/import/import-from-t4c.md
+ - Export a model to TeamForCapella: user/tools/capella/teamforcapella/export/export-to-t4c.md
+ - TeamForCapella repository management: user/tools/capella/teamforcapella/repository-management.md
+ - TeamForCapella Project Management: user/tools/capella/teamforcapella/project-management/project-management.md
+ - Update a TeamForCapella based model: user/tools/capella/teamforcapella/update.md
+ - Git:
+ - Working with Git: user/tools/capella/working-with-git.md
+ - Authentication: user/tokens.md
+ - Administrator documentation:
+ - Index: admin/index.md
+ - Installation: admin/installation.md
+ - Uninstallation: admin/uninstallation.md
+ - Getting started: admin/getting_started/getting_started.md
+ - CI templates:
+ - Gitlab CI/CD:
+ - Image builder: admin/ci-templates/gitlab/image-builder.md
+ - Kubernetes deployment: admin/ci-templates/gitlab/k8s-deploy.md
+ - Developer documentation:
+ - Home: development/index.md
+ - Backend:
+ - Code Style: development/backend/code-style.md
+ - Technology overview: development/backend/technology.md
+ - Extension modules: development/backend/extensions.md
+ - Exception handling: development/backend/exception.md
+ - API Authentication: development/backend/authentication.md
+ - Database migration: development/backend/database-migration.md
+ - Frontend:
+ - Code Style: development/frontend/code-style.md
+ - Routes: development/frontend/routes.md
+ - Testing: development/frontend/testing.md
+ - Customization: development/frontend/customize.md
+ - Kubernetes:
+ - Meassure resource usage: development/k8s/resources.md
+ - Release Notes: release-notes.md
+
+repo_url: https://github.com/DSD-DBS/capella-collab-manager
+edit_uri: edit/master/docs/docs
+
+markdown_extensions:
+ - meta
+ - admonition
+ - pymdownx.details
+ - pymdownx.superfences
+ - pymdownx.extra
+ - abbr
+ - pymdownx.snippets
+ - attr_list
+ - footnotes
+ - pymdownx.emoji:
+ emoji_index: !!python/name:material.extensions.emoji.twemoji
+ emoji_generator: !!python/name:material.extensions.emoji.to_svg
+ - pymdownx.tabbed:
+ alternate_style: true
+
+extra:
+ generator: false
+
+dev_addr: 127.0.0.1:8081
+
+copyright: Copyright © 2022-2023 DB Netz AG
diff --git a/docs/user/nginx.conf b/docs/nginx.conf
similarity index 100%
rename from docs/user/nginx.conf
rename to docs/nginx.conf
diff --git a/docs/user/requirements.txt b/docs/requirements.txt
similarity index 84%
rename from docs/user/requirements.txt
rename to docs/requirements.txt
index 88ebc4042e..f9ef536b0b 100644
--- a/docs/user/requirements.txt
+++ b/docs/requirements.txt
@@ -1,4 +1,4 @@
# SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
# SPDX-License-Identifier: CC0-1.0
-mkdocs-material
+mkdocs-material>=9.4.0
diff --git a/docs/user/docs/about.md b/docs/user/docs/about.md
deleted file mode 100644
index 1c03533b95..0000000000
--- a/docs/user/docs/about.md
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-This service is provided by DB Netz AG.
-
-We'd love to see your bug reports and improvement suggestions! Please give us
-your feedback.
-
-If you want to share some code - please have a look at
-[CONTRIBUTING.md](https://github.com/DSD-DBS/capella-collab-manager/blob/master/CONTRIBUTING.md)
diff --git a/docs/user/docs/additional/alerts/delete.md b/docs/user/docs/additional/alerts/delete.md
deleted file mode 100644
index 5180949ce6..0000000000
--- a/docs/user/docs/additional/alerts/delete.md
+++ /dev/null
@@ -1,4 +0,0 @@
-
diff --git a/docs/user/docs/projects/delete.md b/docs/user/docs/projects/delete.md
deleted file mode 100644
index 9d2e3687a7..0000000000
--- a/docs/user/docs/projects/delete.md
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-Please ask your [administrator](roles.md) to delete a project.
diff --git a/docs/user/mkdocs.yml b/docs/user/mkdocs.yml
deleted file mode 100644
index 20ff48a9b6..0000000000
--- a/docs/user/mkdocs.yml
+++ /dev/null
@@ -1,100 +0,0 @@
-# SPDX-FileCopyrightText: Copyright DB Netz AG and the capella-collab-manager contributors
-# SPDX-License-Identifier: Apache-2.0
-
-site_name: Capella Collaboration Manager Documentation
-theme:
- name: material
- features:
- - content.code.copy
-
-nav:
- - Introduction: index.md
- - Installation: installation.md
- - Projects:
- - Get access to a project: projects/access.md
- - Add a user to a project: projects/add-user.md
- - Request a new project: projects/create.md
- - Delete a project: projects/delete.md
- - Roles: projects/roles.md
- - Models:
- - Create a model: projects/models/create.md
- - Update a model to a newer version: projects/models/update.md
- - Update model metadata: projects/models/metadata.md
- - Model sources:
- - TeamForCapella: projects/models/sources/t4c.md
- - Backups:
- - Setup a model backup: projects/models/backups/setup.md
- - Trigger a model backup: projects/models/backups/trigger.md
- - Remove a model backup: projects/models/backups/remove.md
- - Diagram cache:
- - Setup diagram cache: projects/models/diagrams/setup_diagram_cache.md
- - View diagram cache: projects/models/diagrams/view_diagram_cache.md
- - Model complexity badge: projects/models/complexity_badge.md
- - Sessions:
- - Session Types:
- - Overview: sessions/types.md
- - Persistent: sessions/types/persistent.md
- - Read-Only: sessions/types/read-only.md
- - Request Session: sessions/request.md
- - (Re-)Connect to Session: sessions/reconnect.md
- - Terminate Session: sessions/terminate.md
- - Taking Screenshots: sessions/screenshot/screenshots.md
- - Flows:
- - Git: sessions/flows/git.md
- - TeamForCapella: sessions/flows/t4c.md
- - Files browser: sessions/files/files.md
- - Troubleshooting: sessions/troubleshooting.md
- - Jupyter:
- - Collaboration: sessions/jupyter/collaboration.md
- - Settings:
- - Monitoring: settings/monitoring.md
- - Tools:
- - General: settings/tools/index.md
- - pure::variants: settings/tools/pure_variants.md
- - Model sources:
- - Git: settings/model-sources/git.md
- - T4C: settings/model-sources/t4c.md
- - Alerts:
- - Create an alert: additional/alerts/create.md
- - Delete an alert: additional/alerts/delete.md
- - Tools:
- - Capella:
- - Introduction: tools/capella/introduction.md
- - Co-working methods: tools/capella/t4c-git-compare.md
- - TeamForCapella:
- - Import a model from TeamForCapella: tools/capella/teamforcapella/import/import-from-t4c.md
- - Export a model to TeamForCapella: tools/capella/teamforcapella/export/export-to-t4c.md
- - TeamForCapella repository management: tools/capella/teamforcapella/repository-management.md
- - TeamForCapella Project Management: tools/capella/teamforcapella/project-management/project-management.md
- - Update a TeamForCapella based model: tools/capella/teamforcapella/update.md
- - Git:
- - Working with Git: tools/capella/working-with-git.md
- - Authentication: tokens.md
- - Release Notes: release-notes.md
- - About: about.md
-
-repo_url: https://github.com/DSD-DBS/capella-collab-manager
-edit_uri: edit/master/docs/user/docs
-
-markdown_extensions:
- - meta
- - admonition
- - pymdownx.details
- - pymdownx.superfences
- - pymdownx.extra
- - abbr
- - pymdownx.snippets
- - attr_list
- - footnotes
- - pymdownx.emoji:
- emoji_index: !!python/name:materialx.emoji.twemoji
- emoji_generator: !!python/name:materialx.emoji.to_svg
- - pymdownx.tabbed:
- alternate_style: true
-
-extra:
- generator: false
-
-dev_addr: 127.0.0.1:8081
-
-copyright: Copyright © 2022-2023 DB Netz AG
diff --git a/docs/models/collab-manager/.project b/models/collab-manager/.project
similarity index 100%
rename from docs/models/collab-manager/.project
rename to models/collab-manager/.project
diff --git a/docs/models/collab-manager/.project.license b/models/collab-manager/.project.license
similarity index 100%
rename from docs/models/collab-manager/.project.license
rename to models/collab-manager/.project.license
diff --git a/docs/models/collab-manager/collab-manager.afm b/models/collab-manager/collab-manager.afm
similarity index 100%
rename from docs/models/collab-manager/collab-manager.afm
rename to models/collab-manager/collab-manager.afm
diff --git a/docs/models/collab-manager/collab-manager.afm.license b/models/collab-manager/collab-manager.afm.license
similarity index 100%
rename from docs/models/collab-manager/collab-manager.afm.license
rename to models/collab-manager/collab-manager.afm.license
diff --git a/docs/models/collab-manager/collab-manager.aird b/models/collab-manager/collab-manager.aird
similarity index 100%
rename from docs/models/collab-manager/collab-manager.aird
rename to models/collab-manager/collab-manager.aird
diff --git a/docs/models/collab-manager/collab-manager.aird.license b/models/collab-manager/collab-manager.aird.license
similarity index 100%
rename from docs/models/collab-manager/collab-manager.aird.license
rename to models/collab-manager/collab-manager.aird.license
diff --git a/docs/models/collab-manager/collab-manager.capella b/models/collab-manager/collab-manager.capella
similarity index 100%
rename from docs/models/collab-manager/collab-manager.capella
rename to models/collab-manager/collab-manager.capella
diff --git a/docs/models/collab-manager/collab-manager.capella.license b/models/collab-manager/collab-manager.capella.license
similarity index 100%
rename from docs/models/collab-manager/collab-manager.capella.license
rename to models/collab-manager/collab-manager.capella.license