- ๐ Overview
- โก Easy Install
- โจ Features
- ๐ฌ Demo Gallery
- ๐ Installation
- ๐ง Usage
- ๐ Data Storage
- ๐ ๏ธ Building from Source
- ๐ Project Structure
- ๐ค Contributing
- โ FAQ
- โจ Why You'll Love Pomodoro Plugin
- ๐ License
- ๐ Acknowledgements
- ๐ ๏ธ Implementation Details
- ๐ถโโ๏ธ My Pomodoro Journey
Pomodoro is a plugin for Microsoft PowerToys Run that brings the popular Pomodoro Technique to your keyboard. Simply type pomodoro followed by a command like start, pause, or status to manage your productivity sessions directly from your PowerToys Run interface.
Quick Installation Steps:
1. Download using the button above
2. Extract to %LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\
3. Restart PowerToys
4. Start using with Alt+Space then type pomodoro
- โฑ๏ธ Start, Pause, and Reset Pomodoro Sessions - Manage your work sessions with simple commands
- ๐ Visual Countdown - See time remaining in your current session
- ๐ End-of-Session Alerts - Get notified when your session ends with sound or visual cues
- ๐ Break Management - Automatically switch between work sessions and breaks
- โ๏ธ Configurable Session Length - Customize work and break durations to fit your workflow
- Microsoft PowerToys installed
- Windows 10 or later
- Download the latest release from the Releases page
- Extract the ZIP file to:
%LOCALAPPDATA%\Microsoft\PowerToys\PowerToys Run\Plugins\ - Restart PowerToys
- Open PowerToys Run and type
pomodoroto access the plugin
- Open PowerToys Run (default: Alt + Space)
- Use the following commands:
| Command | Description | Example |
|---|---|---|
pomodoro |
Show Pomodoro instructions | pomodoro |
pomodoro start |
Start a new Pomodoro session | pomodoro start |
pomodoro pause |
Pause the current timer | pomodoro pause |
pomodoro resume |
Resume a paused timer | pomodoro resume |
pomodoro stop |
Stop and reset the timer | pomodoro stop |
pomodoro status |
Show remaining time and state | pomodoro status |
pomodoro break |
Start a short break | pomodoro break |
pomodoro longbreak |
Start a long break | pomodoro longbreak |
- Press Enter on a command to execute it
- Right-click on a command for additional options
- Customize plugin settings in PowerToys Settings
- Long breaks automatically trigger after a configurable number of completed Pomodoros
The Pomodoro plugin stores the following settings locally:
- Session length preferences (Pomodoro, short break, long break)
- Sound notification preference (enabled/disabled)
- Auto-start next session preference (enabled/disabled)
- Completed session history and statistics
All settings are stored securely in the PowerToys settings file.
-
Clone the repository:
git clone https://github.com/ruslanlap/PowerToysRun-Pomodoro.git -
Open the solution in Visual Studio 2022 or later
-
Build the solution:
dotnet build Pomodoro/Pomodoro.sln -
Run the build-and-zip script to create installation packages:
./build-and-zip.sh
Pomodoro/
โโโ Community.PowerToys.Run.Plugin.Pomodoro/
โ โโโ Images/ # Plugin icons and animations
โ โโโ Sounds/ # Sound effects
โ โโโ Main.cs # Main plugin logic
โ โโโ PomodoroResultWindow.xaml # Pomodoro timer window
โ โโโ plugin.json # Plugin metadata
โ โโโ ...
โโโ Services/
โ โโโ TickCounterApiService.cs # Timer service
โ โโโ SoundService.cs # Sound notification service
โโโ Models/
โ โโโ PomodoroSession.cs # Session data model
โ โโโ PomodoroSettings.cs # Settings data model
โโโ Pomodoro.sln # Solution file
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Please make sure to update tests as appropriate.
- ruslanlap - Project creator and maintainer
How do I customize the Pomodoro session length?
Open PowerToys Settings, navigate to PowerToys Run > Plugins > Pomodoro, and adjust the "Pomodoro length (minutes)" setting.
Can I disable sound notifications?
Yes, open PowerToys Settings, navigate to PowerToys Run > Plugins > Pomodoro, and toggle the "Play sound notifications" option.
What happens when a Pomodoro session ends?
By default, you'll receive a notification. If you've enabled "Auto-start next phase," the plugin will automatically start a short break after a work session, or a work session after a break.
How many Pomodoros before a long break?
By default, a long break occurs after 4 completed Pomodoro sessions. This can be customized in the settings.
Can I view my productivity history?
Yes, this feature is available in the plugin. Your completed sessions are tracked and can be viewed through the plugin interface.
- Helps Maintain Focus: Structure your work with dedicated focus periods
- Encourages Healthy Break Patterns: Reminds you to take regular breaks
- Tracks Daily Performance: Monitor your productivity patterns
- Keyboard-Centric: Perfect for keyboard power users
- Customizable: Set your preferred session lengths and notification settings
- Fast: Instant access to timer controls
- Beautiful: Clean, modern UI that matches PowerToys style
- Resource-Efficient: Lightweight with minimal system impact
This project is licensed under the MIT License - see the LICENSE file for details.
- Microsoft PowerToys team for the amazing launcher
- All contributors who have helped improve this plugin
- The Pomodoro Techniqueยฎ by Francesco Cirillo for the time management method
The Pomodoro plugin is built using:
- C# and .NET
- WPF for the UI components
- System.Timers.Timer for countdown functionality
- Windows notification API for alerts
- Task-based asynchronous pattern for non-blocking operations
The plugin implements several PowerToys Run interfaces:
IPlugin- Core plugin functionalityIDelayedExecutionPlugin- Support for delayed executionIContextMenu- Right-click context menuIDisposable- Resource cleanupISettingProvider- Settings management
- Custom notification sounds
- Weekly productivity analytics
- Task labeling for Pomodoro sessions
I created this plugin because the Pomodoro Technique transformed my own productivity. As a developer juggling multiple projects, I found myself constantly distracted and struggling to maintain focus for extended periods. That's when I discovered the power of structured work intervals.
The problem? I needed a tool that integrated seamlessly with my workflow - no separate apps to launch or browser tabs to keep open. PowerToys Run was already part of my daily routine, so building a Pomodoro plugin felt like the perfect solution.
This plugin represents hundreds of hours of focused work (ironically, managed using the Pomodoro Technique itself!). It's designed by a developer, for developers, with the features I personally needed to stay productive:
- Zero Friction: Two keystrokes (Alt+Space) and I'm managing my time
- Minimal Interruption: Notifications that don't break concentration
- Rhythm Building: The consistent work/break pattern helped me develop better focus habits
I hope this plugin helps you as much as the technique has helped me. Happy focusing! ๐
With love from ruslanlap ๐

