ReferenceWriting these docs
Adding a poster
Page actions
- View as Markdown (opens in a new tab)
- Ask ChatGPT (opens in a new tab)
- Ask Claude (opens in a new tab)
ChatGPT and Claude are third-party services. The link gives them this page's public address and a short instruction. This site records nothing.
Preview: the published page may be older or missing.
A poster is generated from a declarative spec by the poster kit: nodes, edges, groups and steps with captions and links; the rules kit 2 enforces so it reads at the size shown; the drift check.
https://docs.gurbanisoul.com/contributing/adding-a-poster/
Posters are the wiki’s large step-through pictures. Each is generated from a spec in
docs-site/posters/NN-slug.mjs into an SVG and a steps sidecar under docs/diagrams/posters/;
the generated files are committed and checked for drift. The poster kit
(docs-site/posters/kit.mjs; a spec declares kit: 2) draws for the size the wiki shows a
poster — about 630 px wide on a 1280-px laptop screen — and refuses a poster that would be hard to read. The full visual spec
and the node kinds are on Diagrams and posters.
Steps
-
Copy the nearest spec (poster 03 is a good reference); take the next number and a slug.
-
Lay out
nodeson the 1200-wide canvas: content between y = 170 and yourheight, 40 px margins. Each node hasx, y, w, h, akind(box, store, actor, gate, fail, pin, ext, good, note) and at most threelines— a title and two lines of detail, at least 25 px (the smallest size that still shows at 13 px on a 1280-px screen),mono: truefor code. Anything longer belongs in the step’s caption. Give each node and edge thestepthat introduces it. -
Connect them with
edges. The kit draws right angles only: two boxes that share a column or a row get a straight line, anything else a bend through the gap between them, or giveviawaypoints (the first and last are projected onto the boxes). Keep 40 px or more between boxes that a line joins, so its arrowhead has room;dashed: truemeans “reads, pins or derives from”. -
Write
steps: an idstep-NN, a title, a caption a student can read on its own, and the page that explains it. Each step gets a numbered badge on its first node. -
Name the files the poster was read against in
sources(a pinned sibling file assggs-data/<path>), and the version, date and commit inverified. -
Generate and check:
Terminal window make posterscd docs-site && node scripts/build-posters.mjs --checkThe kit refuses to build a poster whose text would show under 13 px, whose text overflows its box, whose line crosses a box, a group title, a label or another line’s track, whose last run is too short for its arrowhead, whose two arrows land on one point, whose boxes overlap or straddle a group, or whose text is under 4.5:1 on its fill in either theme — and it says which node or edge, and why. The gate refuses colours outside the palette, a missing title or description, a footer that names a missing file, a sidecar that disagrees with the step groups.
-
Embed it:
in a paragraph of its own. On GitHub it is a picture; on the site, a walkthrough. -
Look at it: light and dark, phone width, keyboard only (Tab to the poster, arrow keys step, Full size opens the lightbox, where the arrow keys step too; Escape closes). Run
make docs-e2efor the posters suite.
Facts
A poster states facts about code: read the files in sources before you write a caption, and
when a number can be checked by a test, add the check to tools/docs_check.py (the search modes
and verify thresholds are checked this way).
Sri Guru Granth Sahib Ji — Knowledge Base wiki. Generated from commit c3d9360. Updated 11 October 2026. This copy may be out of date; the page is at https://docs.gurbanisoul.com/contributing/adding-a-poster/