ubTrace // Server

ubTrace // Server is responsible for delivering the documentation to the user, and cares also about the correct authentication.

It is based on Flask and Vite .

Quickstart

Install via pip install <path_to_ubtrace>

Add ubdocs the the extensions list of the sphinx conf.py file.

Example:

extensions = [
   "ubtrace"
]

Run make ubtrace inside your documentation folder.

Results can be found in the ubTrace build directory, for instance /docs/_build/sphinx .

Run python start.py from the Sphinx build dir to start the server.

Open 127.0.0.1:3000 .

ubDocs documentation build

  1. Run poetry install on project root.

  2. In /docs execute make ubtrace .

  3. In /docs/_build/ubtrace run python start.py

  4. Open 127.0.0.1:3000 .

Architecture

ubDocs provides code for extending Sphinx itself, and also code to provide a Flask app and Blueprints.

Artifacts

../../_images/ubdocs_arch_artifacts.drawio.png

Workflow

../../_images/ubdocs_arch_workflows.drawio.png

Web file dependencies

../../_images/ubdocs_arch_web_deps.drawio.png

Sphinx

All Sphinx-related code, includes the app.py file for the user, is stored under ubdocs/sphinx .

Flask

All Flask-related code, including Blueprints and Frontend code, is stored under ubdocs/server .

To keep the provided flask-code to the user as small as possible, most ubDocs functionalities are added by blueprints, which are available in the installed ubDocs package of the currently used Python Environment only.