Tools
Tools – shipped, tested, on for everyone:
- transform – visual threading-macro pipeline: chain transforms, see every intermediate value, reversibility indicator
- rot13 – Caesar cipher by 13; its own inverse
- base64 – Base64 encode/decode
- url-encode – percent-encoding for URLs
- QR code – QR codes as SVG, inline, no server
- dijkstra explorer – algebraic path problem: one solver, three semirings (shortest, rainwater, widest)
- trapped rainwater – elevation map to retained water volume; O(n) two-pointer, SVG visualization
- marginalia – annotation workspace: paste an org-mode document, view property-drawer annotations as cards, edit verdicts, download updated source
- pasted file editor – paste/drag-drop file editor with a download; a ClojureScript port of Simon Willison's page
Infrastructure and sinks – pieces other pages send to:
- display – 16-colour grid sink; presets from CGA 40x25 to a HUB75 panel; frames from a leased WebSocket, a driver window, or a built-in demo (spec v0.3.1)
- crowsnest – exposure sink and dashboard for the feature-gate SDK; loopback capture plane (spec v2.4)
Experiments – working, behind a tool.<slug> gate; the gate and cohort are on
experiments:
- message-format – ICU MessageFormat playground (plural/select); from Fung's RubyConf 2026 talk
- mutation – mutation testing on a tiny pure fn; from Schirp's RubyConf 2026 talk
- fib – four Fibonacci implementations side-by-side with step counts; from d'Oliveira's RubyConf 2026 talk
- fair-queue – weighted-fair queueing over three tenants; from Baygeldin's RubyConf 2026 talk
- poll – URL-encoded survey state without pushState; an essay with the SPA inside it
Not listed here: gc-viz (a 50% canary that depends on the mutation gate) and six ports whose pure core is complete and property-tested but whose page has no UI yet (budget tracker, dinner split, gas town TLA+, MonoWatch, order state flow, spect8r). All seven sit on experiments with their gates, and each of their pages says so.