Skip to main content

🔥 gitroast

Roasts your git commit history. Run it. Regret it. demo

gitroast scans your commit messages and roasts you for every fix, wip, final_v2_ACTUALLY, and unhinged all-caps rage-commit hiding in your history. Then it gives you a Roast Score and a verdict on what kind of developer you actually are.

🔥 gitroast: my-side-project
Analyzed 143 commits...

  › 'fix' appears 9 times in your history. Ctrl+V is doing your job for you.
  › 'final_v2_ACTUALLY' — 'final' is doing a lot of heavy lifting here, and it's lying.
  › 'WHY WONT THIS DEPLOY' — did the keyboard survive this commit?
  › 'asdf' — a commit message so vague it could apply to literally anything you've ever written.

Roast Score: 62/100
🔥 Repeat Offender
Future archaeologists will find your repo and assume it was written during a fire drill.

Install

pip install gitroast

Or run it without installing:

pipx run gitroast

Usage

# Roast the repo you're standing in
gitroast

# Roast a specific repo
gitroast ~/code/some-other-project

# Only look at the last 50 commits
gitroast -n 50

# Only roast one author (find out who's really responsible)
gitroast --author "that one teammate"

# No colors, for the emotionally fragile terminal
gitroast --no-color

What gets roasted

  • Lazy messagesfix, wip, stuff, ., asdf, and friends
  • The "final" spiralfinal, final v2, final_ACTUALLY_final
  • Duplicate spam — the same message copy-pasted across a dozen commits
  • Rage commits — ALL CAPS, frustration, mild swearing
  • Rambling — commit messages that are secretly small essays
  • The suspiciously clean — yes, good commits get (grudging) credit too

Why

Because git blame already tells everyone what you did. This tells them how you felt about it.

Contributing

PRs adding new roast categories, funnier lines, or language support are very welcome. Keep it clever, not mean — the goal is "friend who teases you," not "internet troll."

License

MIT — do whatever you want with it.


To know more about the kind of work I do → diweshsaxena.com

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gitroast-0.1.1.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitroast-0.1.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file gitroast-0.1.1.tar.gz.

File metadata

  • Download URL: gitroast-0.1.1.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.3

File hashes

Hashes for gitroast-0.1.1.tar.gz
Algorithm Hash digest
SHA256 7cbb296ec0ed2109c885052099b154fc3b26291202ea4b682d88d895a7718f5f
MD5 2a6248c109c2e630a150c79a749a7b13
BLAKE2b-256 d88bd4744bfa3d527e766ba5be6644a23fa177f5dd0deb12a45e7fe63d3b7e00

See more details on using hashes here.

File details

Details for the file gitroast-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gitroast-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.3

File hashes

Hashes for gitroast-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 137379dedf02a9306232e1fe57456b34b19e7ce7acb656b28103b1a8ecada9b2
MD5 2f890a597a2123de85e7def93303dc64
BLAKE2b-256 1887609df3cfb39adfb57888bd5b8a526bdd8f7810108c629182cfa9ecd7560e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page