The Python library that makes you actually work
Project description
get2work
The Python library that makes you actually work.
get2work is a CLI tool that gamifies your coding productivity. It celebrates your commits, roasts your git history, shames you when you're slacking, and makes you actually ship things.
Features
- Commit celebrations — animations and sounds every time you commit
- Level system — 8 levels from "Hello World Survivor" to "Linus Would Be Proud"
- Streak tracking — daily commit streaks
- Shame notifications — get roasted if you haven't committed today
- AI roasts — your commit history analyzed and destroyed by AI
- Vibe check — AI mental health diagnosis based on your commits
- Peer pressure — see what other devs are shipping and feel bad
- Pomodoro timer — focus sessions that count toward your level
- Accountability receipt — daily summary of what you actually did
- Code funeral — deleting 100+ lines triggers a funeral
- Git blame but personal — AI roasts each commit individually
Installation
pip install get2work
Quick Start
# Install the git hook in your repo (do this once per project)
get2work install
# Check your level and stats
get2work status
# Now just commit normally and watch the magic happen
git commit -m "feat: add something cool"
Commands
| Command | Description |
|---|---|
get2work install |
Install git hook in current repo |
get2work status |
Your level, streak, and stats |
get2work roast |
Get your commits roasted by AI |
get2work vibe |
AI mental health diagnosis |
get2work blame |
Git blame but make it personal |
get2work peer <username> |
Stalk a dev on GitHub |
get2work randompeer |
Random dev from the internet |
get2work pomodoro |
Start a pomodoro timer |
get2work shame |
Check if you deserve to be shamed |
get2work receipt |
Your accountability receipt |
get2work start |
Start background watcher |
AI Features (Optional)
The roast, vibe, and blame commands use AI for better results. Without an API key they fall back to hardcoded funny responses.
To enable AI roasts set your OpenAI API key:
export OPENAI_API_KEY="sk-..."
Custom Sounds
Replace default sounds with your own by setting environment variables:
export GET2WORK_SOUND_CELEBRATE="/path/to/your/sound.mp3"
export GET2WORK_SOUND_FUNERAL="/path/to/funeral.mp3"
export GET2WORK_SOUND_SHAME="/path/to/shame.mp3"
export GET2WORK_SOUND_LEVELUP="/path/to/levelup.mp3"
Level System
| Level | Name | Commits needed |
|---|---|---|
| 1 | Hello World Survivor | 0 |
| 2 | Tutorial Finisher | 10 |
| 3 | Functional but Confused | 30 |
| 4 | It Works Don't Touch It | 60 |
| 5 | Commits with Confidence (wrongly) | 100 |
| 6 | git push --force and it worked | 200 |
| 7 | The Last Line of Defense | 400 |
| 8 | Linus Would Be Proud | 700 |
Tutorial
Docker
docker build -t get2work .
docker run get2work
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file get2work-0.1.0.tar.gz.
File metadata
- Download URL: get2work-0.1.0.tar.gz
- Upload date:
- Size: 241.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5ae0416643bf36b2c9fa2988624bbeb492dbd2a5ffb688693a43d21644a93e9
|
|
| MD5 |
59ab9744747f6d90b447280e03e75c80
|
|
| BLAKE2b-256 |
1beb386e6520f57feba2400ac7a6b2f7150b5686bd5fe95cdfee2911a655f6a5
|
File details
Details for the file get2work-0.1.0-py3-none-any.whl.
File metadata
- Download URL: get2work-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9bc290cf5ecdb501c2e2844ab358370b627a478e8fcb43be7c8d24fe55e55a38
|
|
| MD5 |
a229f8ab28a0e1e5a03992b3744715b0
|
|
| BLAKE2b-256 |
e8dda19e8bc11871d0bd0ddd41f6652f05e5809b0889c55ab2e0de8c36b04cff
|