Type |
Level | UID | STATUS | TAGS | REFS |
Title |
Statement |
Rationale |
Comment |
Section |
1
| | | | |
Building blocks
|
Free text |
– | | | | |
StrictDoc is based on the following open-source libraries and tools:
Library/tool |
Description |
TextX |
Used for StrictDoc grammar definition and parsing of the sdoc files. |
Jinja |
Rendering HTML templates. |
Sphinx and Docutils |
- Support of Restructured Text (reST) format
- Generation of RST documents into HTML
- Generation of RST documents into PDF using LaTeX
- Generating documentation websites using Sphinx.
|
FastAPI |
Server used for StrictDoc's Web-based user interface. |
Turbo and Stimulus |
Javascript frameworks used for StrictDoc's Web-based user interface. |
Selenium and SeleniumBase |
Used for end-to-end testing of StrictDoc's Web-based user interface. |
|
Section |
2
| | | | |
Graphical user interface
|
Free text |
– | | | | |
- Web interface is based on FastAPI / Uvicorn serving Jinja templates.
- The Javascript is minimized to Turbo/Stimulus to avoid the complexity of JS frameworks such as React, Vue, Angular, etc.
- Uvicorn web server that serves as a StrictDoc backend for reading and writing SDoc files.
- Several trade-offs to consider:
- Desktop vs Web. Rather web-based, i.e. Python backend and JS frontend, but which technology?
- Keep the current behavior of a statically generated website.
|