CARD 01 // ATLAS COMPACT480×570 FIXED
The full atlas in a 480×570 portrait plate, for a README column that has no room to run wide.
00 // One open-source instrument for the whole trail
CommitAtlas renders the trail as embeddable evidence: eight accessible SVG cards, a project-health dashboard that never paints an unknown signal green, and a credential-free generator that produces the same files offline. Every reading below is live from the same routes a README can embed.
0/2 CI PASSING · 0 ATTENTION · 2 UNCONFIGURED — shown dark, never green
Observed → derived → hypothesis · every number carries its caveat
✓ Public by default ✓ Honest freshness ✓ Live or staticReduced motion: complete static page · nothing enters from invisible
02 // Specimen tray · 8 live SVG routes
Every preview is a real SVG response
Safe, deterministic octocat data · No GitHub calls are made to render this page
The full atlas in a 480×570 portrait plate, for a README column that has no room to run wide.
Public repository, follower, contribution, and star signals at a glance.
Current and longest observed streaks with an honest history boundary.
Exact categorized counts when available; otherwise clearly labelled public-profile percentages.
Transparent personal consistency based on density and streak — not a GitHub rank.
A compact calendar view of public contribution density over time.
Public repository-language distribution, presented without proficiency claims.
Declared lifecycle and project signals for Hello-World and Spoon-Knife.
03 // Atlas × 4 card themes — paper ships for light READMEs
04 // Portfolio signals · CI state rack
Live synthetic reading: CI passing · 0 attention · 2 unknown
72h freshness window · calculateCiState()
Every state gets a distinct lamp shape, a distinct trace, and a printed word — colour is never the only encoding. The three “we do not know” states are deliberately the most visually interesting bays in the rack.
PROVIDER RETURNED NOTHING.
NOT ZERO — UNOBSERVED.
LAMP UNLIT · STEADY · NO PULSE
NO PROBE FITTED.
NO NAMED WORKFLOW TO WATCH.
EMPTY SOCKET · DASHED TRIM
LAST OBSERVED >72H AGO.
WAS PASSING · NO LONGER CLAIMED.
NEEDLE FROZEN · DOTTED TRACE
NAMED WORKFLOW GREEN,
OBSERVED INSIDE 72H.
LAMP LIT · SOLID TRACE · ✓
RED RUN, FRESH EVIDENCE.
A FACT, NOT A SHAME.
DIAMOND LAMP · SPIKED TRACE
RUN IN FLIGHT.
ACQUIRING — THE ONLY STATE
ALLOWED TO PULSE. HALF LAMP
On load, an unavailable gauge does not snap to an error badge — the needle hunts: it rises toward a reading, stutters twice, falls back to the −90° rest stop, and the lamp never lights. The plate reads NO SIGNAL from frame zero, so the motion adds theatre, never information.
5.5s cycle · cubic-bezier(.4,0,.3,1) · transform-only · reduced motion: needle rests at −90°, plate unchanged
05 // Evidence layer · observed → derived → hypothesis
10 readings explained on this page
Every dotted number opens the drawer
Every reading sits on one of three rungs, and every dotted number on screen answers “how do you know that”. CommitAtlas already refuses to paint an unknown signal green; this is the same rule one level up, applied to the difference between a number that was counted and a number that was inferred.
contributions
Rule: contribution-total-observed
active-day density
Rule: density-derived
rhythm level
Rule: rhythm-band-hypothesis
Rung is encoded three ways: word · dot (solid / half / dashed) · border style.
Every reading sorts onto these three rungs — never a fourth.
Closed — every dotted number is a button: rhythm scorePress any dotted number: “how do you know that?”
One shared drawer rather than a popover per number: there is only ever one question being asked, and a single dialog is the only version of this that stays navigable by keyboard.
M8 — drawer: slides up 12px and settles · 260ms · cubic-bezier(.2,.9,.3,1) · ESC or click outside to close · reduced motion: appears in place, fully drawn.
06 // Configure without guesswork
Choose live public data or a clearly marked synthetic preview, declare your own project lifecycles, then copy only the cards you want as README Markdown.