Skip to content

Contributing to Documentation

This page outlines what you need in order to contribute to the documentation, along with the various markdown attributes and so forth you can use.

The documentation is hosted using GitHub Pages and is written in Markdown format, using MkDocs to publish the content. We use the MkDocs Material theme to give us the framework for the look and feel of the website, along with a number of other useful plugins and extensions to enhance the content.

Important! Once up and running with the information on this page, please ensure you are familiar with general markdown syntax.

Refer to the Markdown Guide.

How to Contribute

For contributions from the general public, we recommend forking the GitHub repository and submitting pull requests for the DCC-EX Documenter team to review and merge.

If you wish to contribute more fully and become a part of the DCC-EX Documenter team, reach out to us via Discord. To gain access to the GitHub repository, one of the DCC-EX team administrators will need to add you to the "Web" team in GitHub.

Here are some handy links with more info:

What You Need to Install

This is the list of software you need to successfully contribute to the documentation, including being able to preview it locally:

There are two VSCode plugins that are highly recommended also:

  • Markdown Preview Mermaid Support by Matt Bierner - enables previewing Mermaid diagrams in VSCode
  • markdownlint by David Anson - helps keep consistent, good formatting in Markdown files (like flake8 for Python)

Getting Started

Once you have installed VSCode and Python, you need to clone the GitHub repository, set up a virtual environment, and install the MkDocs requirements.

We recommend using the built-in Git functionality of VSCode to clone the repository, or you can use GitHub Desktop or command line Git, whichever you prefer. There is plenty of information generally available on that so we won't cover it here, and instead will focus on the specifics required to ready to contribute to MkDocs content.

Follow the appropriate section below to setup MkDocs in Python for your operating system:

Setup on macOS

cd mkdocs-test
python 3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Setup on Linux

cd mkdocs-test
python3 -m venv venv
. ./venv/bin/activate
pip install -r requirements.txt

Setup on Windows

cd mkdocs-test
virtualenv venv
venv\scripts\activate
pip install -r requirements.txt

Previewing and building MkDocs

Previewing locally is very simple:

mkdocs serve

Navigate to the local preview in a browser.

When finished with the local preview, stop the local server with either Ctrl+C (Windows/Linux) or Cmd+C (macOS).

Building locally is equally as simple:

mkdocs build

MkDocs also has a feature to deploy to GitHub pages without using a workflow:

mkdocs gh-deploy