.. raw:: html

Breathe

Your technical docs, beautifully integrated

WebsiteDocumentationSponsor

**Sponsor**: If you benefit from using Breathe as a company or an individual, you can financially support the Breathe project with recurring or one off contributions via `Open Collective `_. ---- Breathe is a Sphinx plugin providing beautifully integrated Doxygen output in your user-facing documentation. It allows you to combine Doxygen's excellent technical understanding of your code base with the superb long form documentation output of the Sphinx system. For Packagers ------------- - Breathe packages on PyPI are PGP signed for Breathe >= v4.28.0. - Breathe tarballs on GitHub are PGP signed for Breathe >= v4.29.0. Download -------- Breathe is available from github and `PyPI, the Python Package Index `_. It can be installed with:: pip install breathe Documentation ------------- The documentation is available `here `__. Thank you to the people running `Read the Docs `_ for such an excellent service. The source for the documentation is in the ``documentation`` folder if you want to built it and read it locally. Testing ------- The testsuite can be run with:: make dev-test The documentation also does a good effort of covering the available functionality with different examples. To build the documentation, run:: make This will run doxygen over the example code and then run the Breathe documentation. View the results at:: documentation/build/html/index.html Further to this if you want to compare the current documentation output against a previous state in order to check for regressions there is a ``compare`` script in the ``documentation`` folder. It takes two arguments which are two commit references that you'd like to compare. This means that all your changes have to be committed first. Also the script does not resolve state dependent references like ``HEAD`` so provide concrete commit references like sha1s or branch names. A typical example is to compare your current branch output to master:: # Make sure all your changes are committed first cd documentation ./compare master my-branch This will do a checkout and build at each commit and then run ``meld`` against the resulting directories so you can see the differences introduced by your branch. Requirements ------------ Breathe requires Python 3.6+, Sphinx 4.0+ and Doxygen 1.8+. Mailing List Archives --------------------- The archive for the Google groups list can be found `here `__. The previous mailing list was on `librelist.com `__ and the archives are available `here `__. Please post new questions as GitHub issues. Projects Using Breathe ---------------------- Examples of projects that use Breathe: - `PyTorch `_ - `OpenPilot `_ - `XGBoost `_ - `NumPy `_ - `Mozilla's DeepSpeech `_ - `Microsoft's LightGBM `_ - `PyBind11 `_ - `Ceph `_ - `Apache Arrow `_ - `LVGL `_ - `Espressif IoT Development Framework `_ - `Zephyr Project `_ - `Plaid ML `_ - `Sony's Neural Network Libraries `_ - `fmt `_ Release ------- See the ``mkrelease`` utility in the root of the repository. Useful vim command for changelog conversion to the git tag format: ``%s/\v`(#[0-9]+) \<[^`]*`__/\1/g``. Maintainers ----------- Breathe is currently maintained by `vermeeren `_ & `jakobandersen `_ and was formerly maintained by `michaeljones `_ & `vitaut `_. See `CONTRIBUTORS `_ for the full list. Acknowledgements ---------------- - Dimitri van Heesch for `Doxygen `_. - Georg Brandl for `Sphinx `_. - David Goodger for `Docutils `_ and reStructuredText. Changelog --------- See the `CHANGELOG.rst `_