Skip to content

sander/docpkg

Repository files navigation

Documentation Packager

Documentation Packager enables product developers to combine evergreen and living documentation into human-readable packages, in order to collaborate effectively with stakeholders on complex systems.

How to install it

Run:

cargo install --git https://github.com/sander/docpkg

Optionally add a --rev parameter to pin the commit to use.

How it works

Create a manifest file Docpkg.toml in your project root directory. In your continuous integration workflow, call docpkg edit . and docpkg publish ..

The edit command handles transclusions. This enables you to combine multiple evergreen notes into a single document. See this file’s source code for an example.

The audit command creates a compliance matrix. This enables you to create systems that are compliant by design. See table/compliance.csv for an example and How to track compliance data? for guidance.

The publish command publishes the three listed files from your working directory to the origin repository on branch docpkg/my-package-name/<branch-name>, where <branch-name> is the name of your current working branch. This enables easy access to documentation generated during continuous integration.

For a functional example, see the Docpkg.toml script and Documentation Packager’s own published documentation. For a workflow example, see the GitHub Actions workflow example.yml and its runs.

For help, call docpkg help.

Note that there is no requirement to use both the edit and publish commands. For example, if you wish to only process transclusions on your main branch, just use edit.

Maintenance guide

Build this project using Cargo.

Additional documentation integration scripts

This repository contains a set of standalone scripts for documentation integration.

Related resources