Mirror the auto-indexed per-host pattern for a new docs/services/ category, seeded with the six things currently deployed on or around makerfloss.eu: docs, slides, forgejo, gandi-dns, marp, mermaid. Generator/hook generalisation: - scripts/gen_overview.py: replace the hardcoded `hostname` check with a configurable `key_field` (default: hostname). Add a generic `key-link` column kind (replaces the old `hostname-link`) and a `url-link` kind that renders the value as a clickable link. - scripts/overview_config.yml: declare hardware's key_field, then add a `services` block (key_field=name, its own kind/status enums, grouped by kind for the index table). - scripts/mkdocs_hooks.py: route by `page.file.src_uri` so each hardware/* page gets a "Specs" table and each services/* page gets a "Service" table; both share the helpers in gen_overview. Wiring: - Makefile: docs-index and docs-check now regenerate and drift-check both indices. - .forgejo/workflows/docs.yml: same on the CI runner. - mkdocs.yml: add Services to nav. - README.md, CLAUDE.md: list services/ in the repo-layout block. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
879 B
Makefile
27 lines
879 B
Makefile
.PHONY: help docs-index docs-build docs-serve docs-check slides
|
|
|
|
help:
|
|
@echo "Targets:"
|
|
@echo " docs-index Regenerate docs/{hardware,services}/index.md from per-item frontmatter"
|
|
@echo " docs-build Build the static MkDocs site into ./site (strict)"
|
|
@echo " docs-serve Run a live-reload local preview server"
|
|
@echo " docs-check Drift-check: regenerate indices, fail if they differ from the committed copies"
|
|
@echo " slides Run build-slides.sh (Marp slides)"
|
|
|
|
docs-index:
|
|
python3 scripts/gen_overview.py --category hardware
|
|
python3 scripts/gen_overview.py --category services
|
|
|
|
docs-build:
|
|
mkdocs build --strict
|
|
|
|
docs-serve:
|
|
mkdocs serve
|
|
|
|
docs-check:
|
|
python3 scripts/gen_overview.py --category hardware
|
|
python3 scripts/gen_overview.py --category services
|
|
git diff --exit-code docs/hardware/index.md docs/services/index.md
|
|
|
|
slides:
|
|
./build-slides.sh
|