A MkDocs plugin that reads specdeck build output and generates a documentation site mirroring the component specification structure.
The plugin reads YAML files from a dist/ directory (produced by specdeck build) and generates MkDocs pages from them. The directory hierarchy in dist/ becomes the site navigation automatically.
Each YAML file is rendered as a page with:
- Title and description at the top
- Specs as a table: Key | Value | Description
- Events and actions sections when present
pip install mkdocs-specdeck-pluginOr in development:
pip install -e .Add to mkdocs.yml:
plugins:
- specdeck:
dist_dir: dist # default; path relative to mkdocs.ymlThen run:
mkdocs serve # local preview
mkdocs build # production buildtitle: Note Input
description: Optional description
specs:
formLabelText: Notes
formInputPlaceholderText: Write your note here...
# verbose form:
someKey:
value: some text
description: explains the specThe specdeck pipeline has two decoupled steps:
specdeck buildruns on merge/tag → writesdist/→ committed or uploaded as artifact- MkDocs build reads
dist/→ deploys site
The plugin only reads from dist/ and has no dependency on specdeck internals.
- Python 3.8+
- MkDocs 1.4+
- PyYAML 6.0+