Your Git History Is a Story. I Wrote the Algorithm That Finds It.
Description and use
Commit Canvas generates a single, self‑contained HTML file (~160 KB) that tells the story of a repository’s commit history with chapters and a scrubbable timeline, all produced locally without external processing.
Problem
Git history is presented as a raw commit graph without narrative, making it difficult for users to understand the story of their repository.
Outcome
Commit Canvas produces a portable, offline HTML file (~160 KB) that summarizes a repository’s commit history as a narrative with defined chapters, enabling users to share or archive the story without external dependencies.
Workflow
- Clone the Commit Canvas repository
- Run ./run.sh with the path to the target repository and optional theme and open parameters
- The script executes git log and git for-each-ref, processes the data in Python, and outputs a single HTML file containing the story
- Optionally, use the web version by pasting a public GitHub URL to generate the story in the browser
Evidence
Commit Canvas reads a git repository and generates one thing: a single, self-contained HTML file.
The entire analysis runs on two subprocesses. One git log call with a custom delimiter-separated format and one git for-each-ref for release dates; everything after that is pure Python.
The output is one file — roughly 160 KB. Email it. Commit it to the repo. Put it on a USB stick. Open it offline in ten years. There is nothing left to fetch.
There is also a web version — paste a public GitHub URL and the same engine runs entirely in your browser tab.
The honesty constraint is the design law the whole engine sits under: never claim more than the data shows.
- Record date: 2026-09-15T14:30:51.341Z