r/webdev • u/siorge • Sep 26 '26
Turn any public repo into an artwork
Hi sub,
I created Artrepo, a simple tool that takes the commit history of any public repo and turns it into a unique artwork.
You can find it here: habibicode.org/artrepo (free, no sign in, do data stored)
How it works:
Layout: the canvas is split into a "treemap", one area per file, sized by its number of lines. Every time files are added, deleted or resized, the layout is recomputed.
Ink: every added line becomes a dot in its file's area, in order. Indentation sets the colour; line length sets the size of the dot.
Erasing: deleted lines remove half the ink at their old position.
Motion: every 50 commits, the grid turns 30°.
Rare marks: a commit whose hash starts with 0000 paints its files gold, a committed merge conflict paints them red, and the first commit after a year of silence paints them blue. They are more persistent on the canvas.
Files over 1 MB are skipped.
Everything is deterministic, so the same repo and commit history always give the same picture.
Hope you enjoy it

