API Documentation Generation

It is very important to always document the projects. There are many tools that make this boring task easier, and that help you automate most of the worst parts. Here we present a little guide on how to do that with 3 documentation tools. Doxygen (for C/C++), Sphinx (for Python) and Cargo (for Rust). In the last section we discuss how to automate the process of generating and publishing this documentation using GitLab CI and Jenkins.

Doxygen

In progress …

Sphinx

In progress …

Cargo

In progress …

GitLab Pages

There are 3 examples that you can use as a guide.

C/C++

Python

arcos-python-cookiecutter is a template manager for creating Python projects. We configured GitLab to generate and publish the documentation whenever code is published to master. Here you can see an example:

Repository: https://gitlab.com/arcoslab/arcos-python-cookiecutter

Documentation: https://arcoslab.gitlab.io/arcos-python-cookiecutter

Rust

ARCOS-KDL is our own Kinematics and Dynamics Library. We configured GitLab to generate and publish the documentation whenever code is pushed to master. Here you can see an example how to do that with Rust:

Repository: https://gitlab.com/arcoslab/arcos-kdl

Documentation: https://arcoslab.gitlab.io/arcos-kdl/arcos_kdl/index.html

Jenkins

  • tutorials/api_doc_generation.txt
  • Last modified: 2019/06/13 11:23
  • by dgarcia