Documentation Template using Cookiecutter, MkDocs, and GitHub Template

Create a project documentation template using Cookiecutter, MkDocs, and GitHub Template.

4 min readJul 17, 2022


Documentation Template using Cookiecutter, MkDocs, and GitHub Template

In this article, we will use Cookiecutter, MkDocs, GitHub Template, and GitHub Actions workflow to develop a project documentation template. This ensures a consistent documentation approach across different development teams.

Getting Started


Cookiecutter is a command-line utility that creates projects from cookiecutters (project templates), e.g. creating a Python package project from a Python package project template.

There are many Cookiecutter repositories and templates that are readily available. We can use those templates to kick-start projects quickly.

For example, cookiecutter-Django is a framework for jump-starting production-ready Django projects quickly.

Cookiecutter can be installed either using pip or conda.

python3 -m pip install --user cookiecutter


MkDocs is a fast, simple, and downright gorgeous static site generator that’s geared towards building project documentation.

Documentation source files are written in Markdown, and configured with a single YAML configuration file.

MkDocs includes two built-in themes (mkdocs and readthedocs). For this article, we are going to use a 3rd-party theme — Material for MkDocs.

We use the following command to install MkDocs and its plugins.

pip install mkdocs mkdocs-material mkdocs-markdownextradata-plugin pygments

GitHub Template

We can make an existing repository a template. Others can generate new repositories with the same directory structure, branches, and files.

A GitHub Template Project




Software engineer, Data Science and ML practitioner.