Personal finance that runs in your browser: budgets, loans, imports, no account needed.
Token Circles keeps a household's money in one place: transactions, budgets, accounts, loans, goals and a portfolio, stored in the browser unless you ask for a server. This is its repository played back as a score, from the first commit to today's main.
Numbers about the product itself, each printed with the source that checks it.
The whole report as one image, sized for link previews on Open Graph, X, LinkedIn and Slack. The copy and download buttons export exactly this frame at 2400 × 1260. The record's grooves are the top-level folders, banded by file count.
Records and oddities pulled from the history by rule, not by hand. A ticket prints only when a number crosses its threshold, so every one of them is earned.
Every stub is admit-one: the figures below show where each number comes from.
cloc counts every tracked text file. The app installs as a PWA, so the strings carry the tune: the SolidJS front end, the Cloudflare Worker, the shared schemas both of them import, and the tests that check the arithmetic. Styles and markup sit in the woodwinds; data and docs are counted but kept backstage.
A seating chart where every chair is a fixed number of lines of code. Sections sit left to right; each language takes the chairs it has earned.
One channel strip per language. Faders sit on a logarithmic scale, the way audio engineers read loudness, so the smallest language and the largest share the same desk.
General code split by path: tests/, e2e/, *.test.*, *.spec.* and Playwright test folders are rehearsal; the rest is the performance.
Every commit reachable from main, read from a fresh clone. Spring sessions stamped their commits in UTC and summer ones in Central European time, so every hour is moved into one zone before the piano roll counts it.
Each bar is a day of commits, mirrored like an audio file.
The 24 hours of the day map onto exactly two octaves of keys, from C3 at midnight up to B4 at 23:00. Each note is one hour of one day, and its brightness is how many commits landed in it, like velocity in a DAW.
A drum-machine grid: seven tracks (days) and 24 steps (hours). The brighter the pad, the more commits fell on that beat.
Tempo written the way a score writes it: one beat per commit, per active day.
Six strings for the six most-touched top-level folders, one fret per week. A finger dot shows how many commits touched that folder that week; the busier a folder overall, the heavier its string.
The codebase rebuilt from the diff of every commit on the main branch: git numstat along the first-parent chain, with blanks and comments included and excluded files left out.
Authors merged by e-mail, name and GitHub login, then credited the way an album sleeve would.
Every pull request in the order it was opened, from the first feature branches to the Worker migration and the forms that explain their own errors. Counts come from GitHub search; per-PR timestamps come from the REST API, pinned to the same snapshot.
Every PR is a note, written in the order PRs were opened. One bar is one week and 7/4 means one beat per day. The faster a PR merged, the higher and shorter its note. Press play to hear it.
How each pull request's phrase ended: resolved (merged), left unresolved (closed) or still suspended (open).
Merged PRs grouped by how long they waited, written as note values from sixteenth (≤ 15 minutes) to whole note (more than a week).
LED columns show PRs merged each week; the floating peak-hold bar marks PRs opened that week.
Stars, forks and watchers from GitHub: people who read the source of an AGPL finance app and kept it close. Star dates come from GitHub's stargazer timestamps.
Cumulative stars, day by day, from the repository's creation to the snapshot.
The tracked tree at HEAD: the front end, the Worker, the shared folder both of them import, the docs and the CI that ships them. Binary files are split from text, and the heaviest files are listed by size, fonts and screenshots included.
A sunburst pressed into a record. The inner groove holds top-level folders, the outer grooves hold the sub-folders, and arc length is file count. Hover to stop the platter.
The most common file extensions, ranked by number of files. Badges flag binary files and files stored through Git LFS.
A squarified treemap laid out as performance pads. Each pad's area is its lines of code, its glow is the family that dominates it, and the LED strip along its foot shows the full mix. Switch to “Everything” to let the data in.
Files counted by how many folders down they sit, drawn as a scale of notes.
The largest files in git and the folders that hold the most files directly.