Free · Open Source · Cross-Platform

RageType

Your keyboard fights back.
Every key has a sound. Type angry — it screams.

Download free GitHub →

Python 3.8+ · Windows · Linux · macOS

36 individual key sounds (a-z, 0-9) 6 escalating rage levels Local dashboard to swap sounds Upload your own MP3s per key Lifetime meltdown counter Adjustable sensitivity Zero cloud. 100% local. 36 individual key sounds (a-z, 0-9) 6 escalating rage levels Local dashboard to swap sounds Upload your own MP3s per key Lifetime meltdown counter Adjustable sensitivity Zero cloud. 100% local.
Rage levels
😌 CALM
quiet
😤 ANNOYED
~4 k/s
😠 FRUSTRATED
~7 k/s
🤬 ANGRY
~11 k/s
💢 RAGE
~16 k/s
☢️ MELTDOWN
~22 k/s
Features
🎹

Per-Key Sounds

Every letter and digit gets its own MP3. Not random — intentional. Each key has character.

📊

Rage Analytics

Real-time keys/sec, peak speed, total keystrokes, and a lifetime meltdown counter.

🎛️

Web Dashboard

Local web UI to preview, upload, and swap MP3s for any key. No terminal needed.

📦

Sound Packs

Swap entire sound sets: piano keys, cat meows, drum hits, retro bleeps. Just drop in 36 MP3s.

🖥️

Cross-Platform

Windows, Linux, macOS. Pure Python. Two dependencies. No Electron, no browser, no bloat.

🔓

Open Source

MIT licensed. Read the code. Fork it. Ship your own version. We don't care (in a good way).

Try the rage detector

Start typing. Get angry. Watch what happens.

Waiting for input...

Get RageType

Free. No account needed. Just download and rage.

🪟

Windows

Standalone .exe — no Python needed.
Windows 10/11, 64-bit.

Download .exe
🐧

Linux

Clone & run with Python 3.8+.
X11 & Wayland (XWayland).

View on GitHub
🍎

macOS

Clone & run with Python 3.8+.
Needs Accessibility permission.

View on GitHub
🔒 100% Local. RageType never connects to the internet. No telemetry, no accounts, no cloud. Your keystrokes stay on your machine. Read our security policy →
# Clone the repo
git clone https://github.com/MateiCysec/ragetype.git
cd ragetype

# Install dependencies
python3 -m pip install -r requirements.txt

# Add your sounds (a.mp3 ... z.mp3, 0.mp3 ... 9.mp3)
# into sounds/default/

# Run it
python3 ragetype.py
# Optional: launch the dashboard
python3 dashboard.py
# Open http://localhost:8000