The docs/ tree previously conflated published-site content (3 pages
were in mkdocs.yml nav) with working notes (~18 files that just sat
in the repo). Restructure so each tree means one thing:
- docs/ everything here is built and shipped to docs.makerfloss.eu.
Adds docs/presentations/ for the two Marp decks
previously living under docs/møder/.
- notes/ repo-only working material, not built. Contains
meetings/, todo/, dev/ (was docs/superpowers/), and
communications/ (the launch Facebook post).
- sandbox/ test-mermaid.md, the Marp/Mermaid pipeline sandbox.
Other touches:
- Drop "_noter" suffix on meeting filenames; drop "_presentation"
from the messaging deck's basename for symmetry with SoMe-taxonomi.
- Update CLAUDE.md and docs/index.md path references.
- Drop the now-redundant --exclude-dir=superpowers from
build-slides.sh since superpowers/ is no longer under docs/.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds .forgejo/workflows/build-slides.yml triggering on push to main and
manual dispatch. Job runs in node:20-bookworm-slim, installs marp-cli +
python3, mounts /srv/slides/html into /output, and invokes
build-slides.sh with OUTPUT_DIR=/output.
build-slides.sh now honors OUTPUT_DIR/SLIDES_TITLE/REPO_WEB_URL env
overrides (defaults preserve local-dev behavior), wipes stale .html
before each build, and regenerates a styled index.html listing every
deck — replacing the equivalent logic from the old webhook update.sh.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
el.closest('pre') returns null after marp's polyfill replaces
<pre is="marp-pre"> with <marp-pre> on browsers without customized
built-in element support. el.parentElement works in both cases.
startOnLoad:true does not trigger in a deferred type="module" script
because DOMContentLoaded has already fired. Explicit mermaid.run()
ensures diagrams render regardless of timing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Prevents AI tooling docs (specs, plans) from being built as presentations.
The grep pattern matched marp: true inside code examples in plan files.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Process each slide individually to avoid Docker --output flag issues
- Use a temp directory with 777 permissions for Docker to write to
- Copy generated files to final output directory after build
- Both marp-cli and mermaid injection now work properly with Docker
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>