# Pomatez: A Desktop Pomodoro Timer With Strict Mode and Full-Screen Breaks

> Pomatez is an MIT-licensed Electron and Tauri desktop timer for Windows, macOS and Linux. Its distinguishing choices are enforced breaks, a strict mode that blocks pausing, and a task list that lives in the same window.

**zidoro/pomatez** — Stay Focused. Take a Break.

- Repository: https://github.com/zidoro/pomatez
- Website: https://zidoro.github.io/pomatez/
- Stars: 4,904 · Forks: 212
- Language: TypeScript
- License: MIT
- Published: 2026-09-23 · Updated: 2026-09-23 · Language: en
- Canonical page: https://hysenlabs.com/projects/zidoro-pomatez

## What Pomatez Is For, and Who It Fits

Pomatez is a desktop application that runs the Pomodoro technique: a work interval, a break, repeat. The README describes it as "Stay Focused. Take a Break." and the repository topics list pomodoro-timer, time-management-tool and productivity-app. It is not a web service. There is no account and no server component, and the README's privacy section is a heading without body text, so the project does not spell out a data-handling policy beyond the absence of any obvious network dependency other than update checks.

The intended user is someone who works at one machine all day and wants the timer to be a window they can leave open, minimize to the tray, or pin on top of everything else. The feature list is written for that person: always on top, minimize to tray, close to tray, progress on tray, compact mode for small screens, a dark theme, and a native titlebar toggle for people who dislike custom window chrome. A second group the project targets is people who break their own rules. Strict mode, once enabled, prevents pausing, skipping and resetting the timer after it starts. Full-screen breaks occupy the whole desktop so you cannot keep working through the break. Both features exist because a timer you can dismiss is a timer you will dismiss.

What Pomatez is not for: anyone who needs the timer to follow them between a laptop, a phone and a work desktop. Nothing in the README describes sync, an account, or a mobile client. The built-in task list is described as "a simple list of todos", so treating it as a project manager will disappoint.

## How the Timer, Task List and Break Enforcement Fit Together

The application is a TypeScript monorepo. The root package.json declares a Yarn workspace over app/*, and the scripts split the build into a renderer and a main process: dev:renderer and dev:main run through lerna, and dev:app sets ELECTRON_ENABLE_LOGGING=1 before running start in parallel. That layout matches the Electron pattern of a UI layer and a privileged main process, with the Tauri variant living under app/tauri and built by a separate tauri script that changes directory into app/tauri first. The presence of both an Electron build path and a Tauri build path is the most interesting architectural fact in the repository: the same product ships through two desktop shells, and the release tooling includes a build:updaterfile script that runs a release-prep JavaScript file for the Tauri updater.

Behaviourally, the pieces chain. A Pomodoro configuration defines the intervals, and the README says these rules are customizable. Special breaks sit beside that configuration: you can schedule fixed times for lunch, a snack or dinner without editing the Pomodoro rules. Notifications are a three-way switch, and the README names the values: None is the default, Normal fires on every break, and Extra fires 60 seconds before a break starts, 30 seconds before it ends, and at the actual start. Voice assistance layers a male voice onto those notifications, which matters if you leave the desk during a break. Auto-start work time closes the loop by starting the next work interval without a manual click.

The task list is deliberately separate from the timer rules. You create items, mark them done, and the timer keeps running on its own schedule. There is no described link between completing a task and ending an interval. That is a design choice worth noticing: Pomatez treats the Pomodoro cycle as the fixed unit and your tasks as annotations on it, rather than letting task state drive the clock.

## Installing Pomatez on Windows, macOS and Linux

The README states the app is available for Windows, macOS and Linux, and points to the Releases Page or the project's download page for the latest version. It also lists officially maintained package managers: Snap for Linux and a Homebrew cask for macOS. There is no npm or pip install, because this is a packaged desktop binary rather than a library. If you are on Windows, the Releases Page is the documented route; the README does not name a winget or Chocolatey package, so do not assume one exists.

For a first real use, open the app and set the rules you actually want before starting a session. The README describes the configuration as customizable, and the two settings that change the experience most are the notification type and strict mode. Notification type is one of None, Normal or Extra; Extra is the one that warns you 60 seconds before a break and 30 seconds before it ends. Strict mode is the one to enable only when you are ready for it, because the README states it prevents pausing, skipping and resetting the timer once it has started.

If you want the timer visible while you work in other windows, enable always on top, or enable minimize to tray together with progress on tray. The README is explicit that the tray progress indicator depends on minimize to tray or close to tray being enabled first, so turning on progress on tray alone will not produce the indicator. If the timer animation is a concern on an older machine, progress animation can be turned off.

## Where Pomatez Falls Short

The clearest limitation is stated by the README itself: full-screen breaks "right now it doesn't support multiple monitors". If you work across two or three displays, a full-screen break covers one of them, and the rest of your desktop stays usable. That undermines the enforcement argument for anyone with a multi-monitor setup, which is a large share of developers. If enforced breaks are the reason you are considering Pomatez, test this on your actual display arrangement first.

Keyboard shortcuts are the second gap. The README says they "might be helpful for you depending on your use case" but that they are "not yet customizable". You get whatever the app ships with. For a tool whose value is a repeated cycle, fixed shortcuts are a real friction point for anyone with a non-US keyboard layout or a habit built around another timer.

Strict mode has a predictable failure mode that is not a bug: it removes your escape hatches. If a meeting runs long, or you start a session and immediately get pulled into an incident, the README's description of strict mode says you cannot pause, skip or reset. The only way out is to quit the app, and the README does not document what happens to session state when you do. Treat strict mode as a commitment device you enable deliberately, not a default you leave on.

Finally, the privacy section in the README is present as a heading but carries no text. That is not evidence of a problem, but it does mean the project does not document its update-check behaviour or what the auto-updater sends. If your environment requires a written data-flow statement before you install software, Pomatez does not currently provide one.

## Pomatez Compared With Pomotroid and Pomofocus

Two alternatives come up in the searches around this project: Pomotroid and Pomofocus. They take different approaches, and the difference matters more than any feature checklist.

Pomofocus is a web application. You open it in a browser tab. That means nothing to install, and it works on any machine you can log into, including machines where you cannot install software. The trade-off runs the other way too: a browser tab is trivially ignorable, there is no full-screen break that occupies your desktop, and no tray indicator. Pomatez's enforcement story, strict mode plus full-screen breaks, depends on being a native desktop process. If you do not want enforcement, Pomofocus's lower friction is the better fit.

Pomotroid is the closer comparison, because it is also a desktop Pomodoro timer. The distinction visible in the repository is packaging and shell: Pomatez maintains both an Electron build and a Tauri build in the same monorepo, and publishes through Snap and a Homebrew cask, with auto-updates that download in the background and notify you when ready to install. Which one you pick will come down to which platform packages exist for your OS and which interface you prefer, not to a capability that only one of them has. Both are local timers; neither, based on what Pomatez documents, offers cross-device sync.

If your requirement is a timer that enforces breaks on a single-monitor desktop and lives in the system tray, Pomatez is built for exactly that. If your requirement is a timer you can consult from any device, a native desktop app is the wrong category.

## Maintenance, Release Cadence and Licence

The repository is not archived. The last push was on 2026-05-19, which is the same date as the v1.11.0 release, so the most recent tagged version and the most recent commit coincide. Before that, v1.10.0 landed on 2025-12-23 and v1.9.0 on 2025-12-02. The cadence is irregular rather than steady: two releases within three weeks in late 2025, then roughly five months to the next one. That is normal for a project maintained by a small group, but it means you should not expect fixes to land quickly. There is a CHANGELOG.md and a release-please-config.json in the repository root, so release notes are generated rather than hand-written.

Upgrade cost is low from the user's side. Auto updates are described as checking in the background and downloading automatically, with a notification when the update is ready to install. You do not have to track releases yourself. The cost that is not documented is configuration migration: the README does not say whether your customized Pomodoro rules, special breaks and task list survive a version upgrade. Back up anything you care about before accepting an update you cannot roll back.

For contributors, the build is heavier. The root package.json wires lerna across app/*, with separate build targets for Windows, macOS, Linux and Snap, plus a Tauri build path and a release-prep script for the updater file. Getting a local development environment running means Yarn workspaces, the Node version pinned in .nvmrc, and the pre-commit configuration in .pre-commit-config.yaml. This is not a project you clone and run with one command.

The licence is MIT, copyright Roldan Montilla Jr. MIT permits use, modification and redistribution, including in closed-source products, provided the copyright notice and permission notice are retained. That is a permissive arrangement and imposes no copyleft obligation on your own code. This is a description of the licence text, not legal advice; if you are redistributing Pomatez inside a commercial product, have your own counsel read the LICENSE file.

## Conclusion

Adopt Pomatez if you want a local desktop timer that can enforce breaks and block pausing, and you accept that full-screen breaks only cover one monitor. Skip it if you need cross-device sync, a web client, or custom keyboard shortcuts; the README lists neither sync nor configurable shortcuts. Verify three things before relying on it: that the v1.11.0 release asset for your platform exists on the Releases page, that full-screen breaks behave on a multi-monitor setup, and that the tray progress indicator appears once minimize to tray or close to tray is enabled. The MIT licence means you can fork and redistribute, but the README does not describe what happens to your existing configuration when the auto-updater installs a new version.

## FAQ

### How do I install Pomatez on Windows or macOS?

The README points to the Releases Page and the project download page for the latest version on Windows, macOS and Linux. On macOS there is an officially maintained Homebrew cask, and on Linux there is a Snap package; the README links to both rather than giving install commands. No Windows package manager is listed.

### Does Pomatez support multiple monitors for full-screen breaks?

No. The README states that full-screen breaks occupy the whole screen of your desktop but that this feature does not support multiple monitors right now. On a multi-display setup, the break covers one screen while the others remain usable.

### Can I pause or skip a Pomatez session once it has started?

It depends on strict mode. The README says that when strict mode is enabled, the app strictly follows the rules you set and prevents pausing, skipping and resetting the timer after it starts. With strict mode off, those controls are available.

### Is Pomatez free to use and modify?

Yes. The repository is licensed under MIT, copyright Roldan Montilla Jr. MIT allows use, modification and redistribution as long as the copyright and permission notices are kept.

### What notification types does Pomatez offer?

The README lists three: None, which is the default and shows no notification; Normal, which shows a notification at every break; and Extra, which shows one 60 seconds before the break starts, one 30 seconds before it ends, and one at the actual start. Voice assistance can be enabled to add a male voice to those notifications.

## Sources

- [License: MIT](https://github.com/zidoro/pomatez/blob/master/LICENSE)
- [Project website](https://zidoro.github.io/pomatez/)
- [README](https://github.com/zidoro/pomatez/blob/master/README.md)
- [Releases](https://github.com/zidoro/pomatez/releases)
- [zidoro/pomatez on GitHub](https://github.com/zidoro/pomatez)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/zidoro-pomatez
