🔥 TimerBruh — VS Code Extension
A timer that roasts you, hypes you up, or tells you to touch grass with a full-screen VS Code takeover when time is up.
Features
- ⏱️ Background countdown timer shown in the status bar
- 💥 Full-screen takeover when time expires — covers all of VS Code
- 😤 Roast Mode — brutal, honest, hilarious
- 💪 Motivate Mode — genuine hype to keep you going
- 🌿 Touch-Grass Mode — a funny stop reminder when you need to step away
- 🎲 Random Mode — surprise! You never know what you're getting
- 🔄 Auto-restarts after you dismiss — keeps you accountable
- ⚠️ Status bar warning turns red in the last 60 seconds
- ⌨️ Press
Enter or Escape to quickly dismiss the overlay
Installation
Option A: Install from VSIX (recommended)
- Download
timerbruh-1.0.0.vsix
- Open VS Code
- Open the Command Palette (
Ctrl+Shift+P / Cmd+Shift+P)
- Run: Extensions: Install from VSIX...
- Select the downloaded
.vsix file
- Reload VS Code
Option B: Run in Development Mode
- Clone / copy this folder
- Open it in VS Code
- Press
F5 to launch the Extension Development Host
- The extension will be active in the new window
Usage
| Command |
What it does |
🔥 Start TimerBruh |
Starts the countdown |
⏹️ Stop TimerBruh |
Cancels the current timer |
⚙️ Configure TimerBruh |
Opens settings |
Access commands via:
- Command Palette (
Ctrl+Shift+P) → type "TimerBruh"
- Status bar (bottom right) — click the clock icon
Configuration
Open Settings (Ctrl+,) and search for TimerBruh:
| Setting |
Default |
Description |
roastTimer.intervalMinutes |
25 |
Minutes between reminders (Pomodoro = 25) |
roastTimer.mode |
random |
roast, motivate, touch-grass, or random |
roastTimer.autoStart |
false |
Auto-start timer when VS Code opens |
Example settings.json:
{
"roastTimer.intervalMinutes": 30,
"roastTimer.mode": "touch-grass",
"roastTimer.autoStart": true
}
Building the VSIX
cd timerbruh
npm install
npx vsce package
# → generates timerbruh-1.0.0.vsix
Requires vsce: npm install -g @vscode/vsce
Adding Your Own Messages
Edit src/messages.js — each message is:
{
title: "YOUR TITLE HERE",
body: "The message body. Use `backticks` for code styling.",
emoji: "🎯"
}
Add to ROAST_MESSAGES, MOTIVATE_MESSAGES, or TOUCH_GRASS_MESSAGES arrays.
How It Works
- Timer runs silently in the background
- Status bar shows countdown (
23:45) and turns ⚠️ red in the last minute
- When time's up → full-screen webview panel appears with animated overlay
- User reads message, clicks the button (or presses Enter/Escape) to dismiss
- Timer automatically restarts for the next session
Enjoy the timer, bruh. 🔥