Tutorials

Gaffer Doc – A Comprehensive Guide To Building And Managing Documentation

Essential guide to mastering the documentation process for Gaffer. This article outlines step-by-step instructions on building and managing the latest Gaffer documentation using MkDocs and the Material theme.

Dive in to learn how to efficiently create, serve, and maintain your project’s documentation with ease.

This repository contains all the documentation for Gaffer, which is published here.

Building The Documentation

For instructions for building Gaffer’s v1 documentation, see the v1docs branch. The current Gaffer docs are built using MkDocs with the Material theme.

We use Mike for documentation versioning. Running mike is handled by GitHub Actions, so it isn’t something most contributors will need to use unless you make changes to that part of the project.

Prerequisites

Python

You need Python (version 3.8 or newer) installed to use MkDocs.

MkDocs Dependencies

You need MkDocs and the Material theme to generate the documentation. The versions we are using can be installed from the requirements.txt:

pip install -r requirements.txt

Build The Documentation Site

To generate static documentation files and place them into the default site directory:

mkdocs build

Build And Serve The Documentation Site (Recommended)

Docs can be build and served locally (on localhost:8000) by using:

mkdocs serve

This automatically updates and refreshes when local changes are made. Although it might take a few seconds due to the amount of content.

Varshini

Varshini is a Cyber Security expert in Threat Analysis, Vulnerability Assessment, and Research. Passionate about staying ahead of emerging Threats and Technologies.

Recent Posts

Kali Linux Commands Cheat Sheet: Complete Quick Reference

This cheat sheet covers the essential Kali Linux commands every pentester and ethical hacker uses…

2 weeks ago

What I Wish I Knew Before Learning Malware Analysis and Reverse Engineering

When I first started learning malware analysis and reverse engineering, I thought the hardest part…

2 weeks ago

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

4 weeks ago

git cherry-pick Command: Apply Commits from Another Branch

Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…

4 weeks ago

Best Email APIs for Secure Business Email: Why Developers Are Moving Beyond SMTP

Email is still one of the most important communication channels inside modern applications. Password resets,…

4 weeks ago

Nginx Commands in Linux: Start, Stop, Reload, Test, and Log

Nginx is a high-performance web server and reverse proxy trusted by some of the largest…

1 month ago