Commit Mood Ring
Reads the tone of your commit messages and tells you how your week actually went.
What you're making
Run one command in any project and it reads back through your commit messages, working out whether you sounded calm, frustrated, or triumphant. It prints a little week-in-review: your angriest day, your happiest commit, how often you wrote the word 'finally'. It's funny, it's slightly uncomfortable, and it takes about three seconds to run.
A terminal tool that scores commit-message sentiment over a date range and prints a compact summary with a sparkline. Reading git history is easy; the interesting part is scoring tone usefully without shipping a machine-learning model.
Hosting · Free forever
Deploys free on npm, PyPI or GitHub Releases.
Nothing to host. Publishing to a package registry is free and permanent, and anyone can run it with a single command.
Publish to npm — one command and anyone can run it.
Core features · 7
- Reads commit history for a chosen date range
- Scores each message for tone using a bundled word list
- Prints a per-day sparkline of mood in the terminal
- Calls out the most and least cheerful commits by name
- Counts telltale words like 'finally', 'oops' and 'revert'
- Works in any git repository with no configuration
- Handles repositories with thousands of commits without stalling
The interesting part
- Scoring tone from very short text without a model — commit messages are terse and full of jargon
- Rendering colour and sparklines that survive terminals which don't support them
- Parsing git output reliably rather than by fragile string splitting
Once it works
- Compare tone across contributors
- Add a shareable summary card as an image
- Flag the hour of day your mood dips