Skip to content



Architecture documentation is based on PlantUML that comes with lots of documentation and examples. Diagrams are created through text-based documents (.puml files) that are then rendered into an appropriate format like Pandoc Markdown is used to generate PDFs and HTML output.

PlantUML was chosen as the architecture medium for a number of reasons, of which the most important are:

  1. It supports a number of different types of diagram: class, sequence, activity, ERM ...
  2. Diagrams can be stored with the codebase and documentation rather in a separate system such as Whimsical and then imported as needed into documentation.

To contribute, see CONTRIBUTING.