You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Precisely what title says. Understanding Beluga's bits and bolts, as well as the reasons behind them, is invaluable for advanced use cases and library development. This is particularly true considering that Beluga makes use of some rather advanced C++ programming techniques that not everybody may be familiar with. A concise and cohesive explanation is in order.
Make sure to cover project structure, abstractions, and conventions. Cross-reference textbooks when appropriate.
The text was updated successfully, but these errors were encountered:
### Proposed changes
This patch unifies all repository documentation in a common Sphinx site:
high-level documentation lives in [MyST](https://mystmd.org/) flavor
Markdown documents, Doxygen API documentation is pulled in using the
`autodox` extension in https://github.com/Ekumen-OS/sphinx-babel.
In the process, this PR partially addresses #301, #302, #303, #304, and
#308.
#### Type of change
- [ ] 🐛 Bugfix (change which fixes an issue)
- [ ] 🚀 Feature (change which adds functionality)
- [x] 📚 Documentation (change which fixes or extends documentation)
💥 **Breaking change!** This patch changes the way we used to build
documentation for the Beluga package.
### Checklist
- [x] Lint and unit tests (if any) pass locally with my changes
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have added necessary documentation (if appropriate)
- [x] All commits have been signed for
[DCO](https://developercertificate.org/)
### Additional comments
This patch gets us 80% of the way towards release ready documentation.
High-level documentation is not as polished as I would like to
(specially the Key Concepts page), but this patch is big enough already
and I'm too drained to produce quality technical writing. The easiest
way to review this is building documentation locally and exploring it.
You can check the README file under `docs` for instructions, or simply:
```
git clone https://github.com/Ekumen-OS/beluga.git
cd beluga/docs
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
make html
```
Note this documentation needs Python 3.9 or later to build. I was not
able to get all dependencies to play ball in earlier Python versions.
---------
Signed-off-by: Michel Hidalgo <[email protected]>
Feature description
Precisely what title says. Understanding Beluga's bits and bolts, as well as the reasons behind them, is invaluable for advanced use cases and library development. This is particularly true considering that Beluga makes use of some rather advanced C++ programming techniques that not everybody may be familiar with. A concise and cohesive explanation is in order.
Make sure to cover project structure, abstractions, and conventions. Cross-reference textbooks when appropriate.
The text was updated successfully, but these errors were encountered: