Manage decision records with mkdocs in a customizable and minimal fashion.
Project description
mkdocs-decision-records
Manage decision records with mkdocs in a customizable and minimal fashion.
Features
- Customizable status colors and lifecycle
- Enforces information to be present for ADRs
- Allows description being kept as markdown
Demo
You can find a Demo on GitHub Pages
Installation
- Install
mkdocs-decision-recordsfrom the PyPi registry using your favorite package manager - Configure your
mkdocs.ymlplugins: - decision-records: # Folder where your decision records are located, defaults to adr decisions_folder: adr # Optional prefix to prepend to ticket numbers ticket_url_prefix: https://ticket.example.com/ # Configure amount of required deciders required_deciders_count: 1 # Configure available stages and the badge colors lifecycle_stages: {status}: {color}
- Create your ADRs ensuring to add the frontmatter meta data:
--- id: 000 status: proposed | rejected | accepted | deprecated | … | superseded by date: YYYY-MM-DD deciders: - decider 1 - decider 2 # Optional ticket ticket: FOO-1 --- ## Context and Problem Statement [Describe the context and problem statement, e.g., in free form using two to three sentences. You may want to articulate the problem in form of a question.] ## Decision Drivers <!-- optional --> * [driver 1, e.g., a force, facing concern, …] * [driver 2, e.g., a force, facing concern, …] * … <!-- numbers of drivers can vary --> ## Considered Options * [option 1] * [option 2] * [option 3] ## Decision Outcome Chosen option: "[option 1]", because [justification. e.g., only option, which meets k.o. criterion decision driver | which resolves force force | … | comes out best (see below)]. ## Pros and Cons of the Options <!-- optional --> ### [option 1] [example | description | pointer to more information | …] <!-- optional --> * Good, because [argument a] * Good, because [argument b] * Bad, because [argument c] * … <!-- numbers of pros and cons can vary --> ### [option 2] [example | description | pointer to more information | …] <!-- optional --> * Good, because [argument a] * Good, because [argument b] * Bad, because [argument c] * … <!-- numbers of pros and cons can vary --> ### [option 3] [example | description | pointer to more information | …] <!-- optional --> * Good, because [argument a] * Good, because [argument b] * Bad, because [argument c] * … <!-- numbers of pros and cons can vary --> ## Links <!-- optional --> * [Link type] [Link to ADR] <!-- example: Refined by [ADR-0005](0005-example.md) --> * … <!-- numbers of links can vary -->
Motivation
I love ADRs and documenting decisions in general. This plugin makes it a bit easier, enforcing basic meta information while keeping the format open enough so you can do your thing.
Contributing
I love your input! I want to make contributing to this project as easy and transparent as possible, whether it's:
- Reporting a bug
- Discussing the current state of the configuration
- Submitting a fix
- Proposing new features
- Becoming a maintainer
To get started please read the Contribution Guidelines.
Development
Requirements
- Python 3.12+
- Poetry
Build
poetry install
Alternatives
- mkdocs-material
- Needs to use the theme
- ADR graph
- mkdocs-macros-adr-summary
- works entirely with macros
- no metadata table at the top
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mkdocs_decision_records-1.2.1.tar.gz.
File metadata
- Download URL: mkdocs_decision_records-1.2.1.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.12.8 Linux/6.8.0-1018-aws
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
909ef9cbe2c8ddf1ad4764a7c8dca0281e448f152ace853dfede762796721fd5
|
|
| MD5 |
9da56177556fa2348ad81889c118c628
|
|
| BLAKE2b-256 |
007cc55977553ab1f36731190d807b7da2164f12174d79c705d0701b42599649
|
File details
Details for the file mkdocs_decision_records-1.2.1-py3-none-any.whl.
File metadata
- Download URL: mkdocs_decision_records-1.2.1-py3-none-any.whl
- Upload date:
- Size: 8.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.12.8 Linux/6.8.0-1018-aws
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
35b9e9850220e52ce5bb92b36a05de43ac65e749ae5c50fa7406c4015a3d1b17
|
|
| MD5 |
4cdee3a89f6f571bb11d1a264474d767
|
|
| BLAKE2b-256 |
2d53ab9fe64f9294c493c10f2ed5d53708801928e79105160b68b7a3d2825850
|