A tiny, fast, always-on-top pixel-art Pomodoro timer for Windows.
Pixeldoro lives in a small frameless window that floats above your work β no browser tab, no bloated Electron app, just a lightweight desktop widget that keeps you in flow.
app-preview.mp4
- Featherweight β a single ~14 MB standalone
.exewith one runtime dependency (pygame). No installer, no background services, no telemetry. - Efficient by design β locked at a steady 60 FPS with near-idle CPU usage. Every sprite is pre-scaled once at startup and text surfaces are cached, so the render loop performs zero disk I/O and no per-frame scaling.
- Out of your way β a 360Γ220 frameless window with rounded corners that you can drag anywhere and pin on top of every other window.
- β±οΈ Classic Pomodoro flow: focus β short break, with a long break after a configurable number of cycles
- πͺ Frameless, draggable window with chroma-key rounded corners
- π Always-on-top toggle (pin button)
- βοΈ Fully configurable focus, short-break, and long-break durations and cycle count
- π Auto Mode to chain phases automatically without manual restarts
- π Sound cues on phase changes
- π Clickable credits that open the author's links
Every value on the Settings screen can be changed three ways β use whichever is fastest:
| Action | How |
|---|---|
| Step up / down | Click the + / β buttons (hold to repeat) |
| Scroll to adjust | Hover a value and scroll the mouse wheel |
| Type an exact value | Click the number, type with the keyboard, press Enter |
Durations are entered in minutes. Press Esc to cancel an edit.
Grab the latest Pixeldoro.exe from the
Releases page and run it β no installation required.
Note
On first launch Windows SmartScreen may warn about an unrecognized app (the build is unsigned). Click More info β Run anyway.
Requires Windows and Python 3.10+.
# 1. Set up the environment
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
# 2. Run directly
python main.py
# 3. (Optional) Build a standalone executable
pip install pyinstaller
pyinstaller main.spec # β dist/Pixeldoro.exemain.py Window setup, input handling, and the render loop
src/config.py Paths, window geometry, and default durations
src/timer.py Pomodoro state machine (no UI dependencies)
src/ui_elements.py Pixel-art button widgets
assets/ Fonts, sprites, and audio
Released under the MIT License.