Build class documentation

The documentation of all classes are included in the code as comments. This kind of documentation process is called LuaDoc. But we build the html files for the documentation with LuaDocumentor. It is a tool similar to LuaDoc, but with some additional features the Moose team decided to use.

The team created also some modifications, which are not part of the official LuaDocumentor tool. So we use the code in the git repository Applevangelist/luadocumentor in the branch patch-1.

There are two git repositories which are used to save the generated documentation:

Main build steps to create the class documentation are defined in .github/workflows/build-docs.yml:

Build a preview locally

To generate a preview of the class documentation go into the folder docker/build-docks and run docker compose up. It will create a Docker image and start a Docker container. Within this container all needed software packages are included to build to class documentation.

  • You need a working installation of Docker.
  • In the main repository folder a new folder build will be created.
  • Subfolders build/docs and build/tools will be generated.
  • Repo Applevangelist/luadocumentor will be checked out to build/tools/luadocumentor
  • luadocumentor.lua will be executed and writes the output to build/docs.

If MOOSE_DOCS is checked out to /moose/build/MOOSE_DOCS by the developer manually, then the generated files are also copied into /moose/build/MOOSE_DOCS/Documentation/. This allows to run docker compose up in /moose/build/MOOSE_DOCS/docker/, so the full result can be checked.