Add Markdown linter (pymarkdown) to pre-commit.
Adapt current markdown files to fulfill linter rules.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
* On Windows use 127.0.0.1 as default config host (model defaults) and
addionally redirect 0.0.0.0 to localhost on Windows (because default
config file still has 0.0.0.0).
Use 0.0.0.0 as default otherwise (e.g. Linux/Docker) to allow EOS
being accessible on local network (not just same host).
Note: Docs generation on Windows is incompatible with the Github
pipeline tests. Address this in the nested-config feature branch.
* Update install/startup instructions as package installation is
required atm and Docker on Windows has to be accessed at localhost or
127.0.0.1 even though the server log says 0.0.0.0 (which is required
to be available outside the container).
* Fix EOSdash startup with read_only: true (support session key via
EOS_SERVER__EOSDASH_SESSKEY variable). Backport of feature branch.
* Remove root_path, causing Windows to fail load swagger UI (/docs).
Revert to EOSdash startup as a sub-process.
Add arguments to control the complete startup of both servers.
Also development reload can now be given as an argument.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
Rename FastAPI server to `eos` and FastHTML server to `eosdash`.
Make an user easily identify what server is meant. FastAPI and FastHTML are
implementation details that may confuse the non-technical user.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
Use documentation generation tools that are available for Windows and Linux.
Use python instead of shell scripts to generate documentation.
For ReadTheDocs make generated documentation content static to avoid
running scripts outside of the docs/ path which is the default path for ReadTheDOcs.
Add tests that check if generated content does go out of sync with latest source.
Use tabs to show commands for Windows and Linux to improve user experience.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
Add documentation that covers:
- Prediction
- Measuremnt
- REST API
Add Python scripts that support automatic documentation generation using the Sphinx
sphinxcontrib.eval extension.
Add automatic update/ test for REST API documentation.
Filter proxy endpoints from REST API documentation.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
* Update README/CONTRIBUTING Closes#180
* Remove duplicated files in docs/develop and copy them from project
root to there on documentation generation.
* Makefile: Use fastapi to start server, set port to 8503
* Add package API documentation generation
Add generation of the API documentation for akkudoktoreos
and akkudoktoreosserver packages.
The API documentation is generated by the Sphinx autosummary extension.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
* Enable Google style source commenting and documentation generation.
Enable automatic documentation generation from Google style docstrings in the source.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
* Check Google style source commenting.
Check Google style commenting by the appropriate ruff rules.
Commenting is _NOT_ enforced. Missing docstrings are ignored.
Minor commenting quirks of the code base are adapted.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
* Improve Markdown handling and switch to Markdown documentation.
Switch to Markdown for the documentation files to improve the user and developer experience (see issue #181).
Keep files with special directives for automatic API documentation in RST format. The
directives expect RST.
Also add dummy handling for openai/ swagger server documentation. The openai interface definition is
for now taken from the fastapi PR as EOS will switch to fastAPI.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
---------
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
Co-authored-by: Normann <github@koldrack.com>
Add documentation infrastructure and some sample content.
Documentation is generated by sphinx using extensions to support
Markdown an restructuredText for simple documentation writing.
Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>