Commit graph

110 commits

Author SHA1 Message Date
Claude
50775186fb fix(docs-ci): install nodejs in python image — actions/checkout needs node
All checks were successful
Build docs site / build (push) Successful in 31s
Build slides / build (push) Successful in 52s
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 21:17:59 +02:00
sjat
da19ce1bef Revert "fix(docs-ci): install nodejs in python image — actions/checkout needs node"
This reverts commit 3fe690edf0.
2026-05-17 21:17:41 +02:00
Claude
3fe690edf0 fix(docs-ci): install nodejs in python image — actions/checkout needs node
Some checks failed
Build docs site / build (push) Successful in 30s
Build slides / build (push) Has been cancelled
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 21:17:06 +02:00
sjat
e5c8e86708 Revert "fix(docs-ci): install nodejs in python image — actions/checkout needs node"
This reverts commit d51d68abca.
2026-05-17 21:17:06 +02:00
Claude
d51d68abca fix(docs-ci): install nodejs in python image — actions/checkout needs node
All checks were successful
Build docs site / build (push) Successful in 31s
Build slides / build (push) Successful in 53s
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 21:12:42 +02:00
sjat
3287df35c5 Merge branch 'feat/hardware-overview'
Some checks failed
Build docs site / build (push) Failing after 43s
Build slides / build (push) Successful in 59s
2026-05-17 21:11:19 +02:00
sjat
6b1a61461b feat(docs): MkDocs Material site + auto-generated hardware overview
Bootstraps an MkDocs Material documentation site (rendered to
docs.makerfloss.eu by the Forgejo Actions runner). The first feature
is an auto-generated hardware overview built from per-host YAML
frontmatter blocks under docs/hardware/.

- mkdocs.yml, requirements.txt: MkDocs Material 9.5 + pyyaml
- Makefile: docs-index | docs-build | docs-serve | docs-check
- scripts/gen_overview.py: stdlib + pyyaml generator, deterministic and
  offline. Reads scripts/overview_config.yml — category-driven so
  services/vms can plug in later without touching the script.
- scripts/overview_config.yml: hardware schema and index layout
- docs/hardware/{makerfloss,fisi,tembo}.md: 3 sample entries
- docs/hardware/index.md: GENERATED, committed (CI fails on drift)
- docs/index.md: site landing page
- .forgejo/workflows/docs.yml: drift-check + mkdocs build --strict +
  rsync site/ to /srv/docs-makerfloss/html on push to main
- .gitignore: site/, .venv, __pycache__

Schema:
- hostname, kind, status (required; kind/status are enums)
- model, location, cpu, cpu_cores, cpu_threads, ram_gb, storage_gb,
  storage_type (enum), storage_notes, nic_gbps (all optional)
- Filename stem MUST equal hostname (enforced by generator)
- Extra optional fields are accepted silently and live on the per-page

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 21:10:58 +02:00
Claude
d81c3af3b3 fix(build-slides): marp --output rejects multiple inputs — iterate per file
All checks were successful
Build slides / build (push) Successful in 52s
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-17 17:27:02 +02:00
Claude
90598056d4 ci: build slides via Forgejo Actions runner
Some checks failed
Build slides / build (push) Failing after 1m5s
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>
2026-05-17 17:24:34 +02:00
sjat
c6a284ee1f Updated fit test 2026-05-11 12:50:38 +02:00
sjat
a283ccc20c test: retrigger slides webhook after secret realignment 2026-05-11 11:53:09 +02:00
sjat
b5d882415c test: demo slide fit-to-screen options 4+5 on copies
Adds -fit-test copies of the labdesign and messaging decks that apply
container-query font sizing (option 5) and a max-height cap on mermaid
SVGs (option 4) so we can compare overflow behavior side-by-side
against the originals.

Includes a comment explaining why option 2 (custom canvas size) cannot
be demoed inline and would require registering a custom theme via
marp.config.mjs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 11:12:23 +02:00
sjat
fa7fd32dcd Updated messaging deck 2026-05-10 21:56:22 +02:00
sjat
6688ad0a59 fix: split long slides and auto-fit diagrams in labdesign
- Add .mermaid svg CSS to scale diagrams to fit slide bounds
- Split Requirements into Requirements+Details / Constraints
- Split Proposals into Short term / Midterm
- Switch Lab Diagram to graph LR (left-to-right fits the
  Internet→VPS→Firewall→Lab flow and uses vertical space better)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 21:27:49 +02:00
sjat
d310cad787 fix: replace ASCII art Big Picture with proper markdown tables
Two 4-column tables replace the box-drawing character grid, which
rendered poorly in the gaia theme's proportional font. Dense class
applied to keep both tables within slide bounds.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 21:18:11 +02:00
sjat
9cc4ab12a8 Removed AI entry from house rules 2026-05-10 19:58:24 +02:00
sjat
19c99e31db Updated houserules 2026-05-10 19:54:22 +02:00
sjat
7503eb409e fix: prevent table overflow across messaging and SoMe decks
Messaging deck:
- Slide 5: remove redundant E2EE column (all apps have it), add italic note
- Resources: shorten meshtastic link text, apply .dense class
- Add .dense CSS class (0.5em) for slides that need extra reduction

SoMe deck:
- Apply .dense class to The Categories and Messaging slides (7 rows each)
- Add .dense CSS class definition

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 19:31:18 +02:00
sjat
48a72de10e docs: clarify language and fix grammar in house rules
- Fix brake → break
- Fix gatekeep → gatekeeping, everybody → everyone
- Cleaner prose throughout, consistent punctuation in lists
- non-FLOSS → proprietary software (more universally understood)
- Shorten "Licenses for what we build" → "Licenses"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 19:14:23 +02:00
sjat
0403c9098e fix: typo lightwieght → lightweight 2026-05-10 19:12:38 +02:00
sjat
48cfecae39 docs: sync house rules slide with CLAUDE.md working norms
- Language rule updated: adds commits, changes Danish exception to
  meeting notes (was: service UIs)
- Add Git norms: trunk-based, feature branches, simple messages
- Add AI policy: allowed but reviewed, no secrets in commits
- License: FLOSS by default (was: MIT by default)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 19:12:19 +02:00
sjat
808dd02cc5 fix: reduce table font size to prevent overflow on slides
Tables with 6-9 rows overflowed the 720px slide height and scroll
events were captured by Bespoke.js for slide navigation instead.
0.65em with tighter padding keeps all tables within bounds.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 19:00:22 +02:00
sjat
ed0d4ec751 feat: replace ASCII diagrams with mermaid in messaging deck
Signal Under the Hood: sequence diagram shows the message path and
what the server can/cannot see, clearer than ASCII art.

Matrix Federation: graph shows client→homeserver→federation topology,
replacing the ASCII box diagram.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 18:51:48 +02:00
sjat
695a8102e6 fix: use parentElement and explicit mermaid.run() for reliable rendering
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>
2026-05-10 18:14:02 +02:00
sjat
afe0dff5f9 fix: exclude superpowers/ from marp slide discovery
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>
2026-05-10 18:00:22 +02:00
sjat
84586b718c Revert "feat: add standalone mermaid injection script for use by server deployment"
This reverts commit add24f67ad.
2026-05-10 17:51:11 +02:00
sjat
add24f67ad feat: add standalone mermaid injection script for use by server deployment
Creates inject-mermaid.sh to apply mermaid.js CDN injection to HTML files
that contain mermaid code blocks. This can be called independently or
integrated into deployment scripts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 17:49:20 +02:00
sjat
9e5a315c54 fix: make build-slides.sh work with Docker marp by using temp directory with proper permissions
- 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>
2026-05-10 17:49:02 +02:00
sjat
c6052a8a66 fix: robust mermaid injection with utf-8 encoding and error check 2026-05-10 17:43:59 +02:00
sjat
b5226fd74c feat: inject mermaid.js into slides that use it 2026-05-10 17:42:35 +02:00
sjat
7b045979a5 test: add mermaid pipeline test slide 2026-05-10 17:40:37 +02:00
sjat
f20a52268a docs: add mermaid pipeline implementation plan
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 17:39:35 +02:00
sjat
5b37a54056 docs: add mermaid pipeline design spec
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 17:37:46 +02:00
4f4e17d0bf instructions for mermaid diagrams 2026-05-10 12:24:37 +02:00
abc2a9c300 reverting changes 2026-05-10 12:21:09 +02:00
2459b4c680 trying to get mermaid diagrams to work 2026-05-10 12:18:02 +02:00
0a5d0a4677 first cut at a SOMe taxonomi 2026-05-10 12:11:55 +02:00
8e4a325d6a template slides for SoMe 2026-05-10 12:00:50 +02:00
3488007967 made it into a slide show 2026-05-10 11:49:48 +02:00
f5fa9a78a5 made diagrams better 2026-05-10 11:41:22 +02:00
f36817a32d first cut of lab design 2026-05-10 11:13:52 +02:00
sjat
888a28a947 presentation: trim all slides to fit one screen
- Max ~8 content lines per slide, tables max 5-7 rows
- Split Signal pros/cons to use bold instead of ### subheadings
- Split "Two More Worth Knowing" into separate XMPP and Briar slides
- Trim bridges table (drop duplicate IRC row)
- Trim resources table to 7 essential links
- Tighten participation slides

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 15:53:34 +02:00
sjat
72eee63651 presentation: add bridges slide, dark theme, clickable links
- Add Matrix bridges slide with table (WhatsApp, Telegram, Signal, IRC, Meshtastic)
- Switch to gaia/invert dark theme
- Make all resource links clickable markdown URLs
- Add meshtastic-matrix-relay to resources

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 15:50:12 +02:00
sjat
dfd801aebe Cleaned up test files and updated presentation on messaging apps 2026-05-06 13:52:13 +02:00
sjat
8a7054386d Final (hopefully) test of webhook 2026-05-06 13:35:43 +02:00
sjat
703fcf2f27 Test of marp tagging to webhook 2026-05-06 13:19:56 +02:00
sjat
23b4cba073 Testing CI for slide production via web-hook and marp-cli. 2026-05-06 11:33:40 +02:00
sjat
141511322f Add marp slide infra and messaging alternatives presentation
- build-slides.sh: local build script (uses marp CLI or Docker fallback)
- slides/.gitkeep: output directory tracked, generated HTML gitignored
- docs/møder/2026-05-xx-messaging-presentation.md: first presentation

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 10:23:00 +02:00
sjat
e7be264fdf Added plan for next meeting and a todo 2026-05-06 09:34:55 +02:00
sjat
38be6b1b09 Initiated list of services we should set up for Orange Makerspace 2026-04-27 08:32:55 +02:00