Privacy Policy
Effective date: October 27, 2026
In short: RestGuard has no accounts, analytics, telemetry, ads or crash reporting. It does not collect, sell or share any personal data. Everything it needs stays on your device. The only time it connects to the internet is when you turn on phone notifications, and then it sends only a "break is over" message to the ntfy server you choose.
This policy covers the RestGuard desktop app on every platform and every distribution channel, including the Microsoft Store, and this website. RestGuard is free, open-source software developed by HansTanzi. You can verify everything described here in the source code.
Data stored on your device
RestGuard saves your settings in a configuration file (config.toml) and your chosen UI language in a small language file, both in the app's configuration folder on your computer. The settings include break timings, the enforcement level and profiles, sound preferences (including the path of a custom sound file if you pick one) and, if you set them up, the ntfy server address and topic. These files never leave your device, and uninstalling the app or deleting the folder removes them.
Information used on the device and never stored or sent
To decide when to start and hold off a break, RestGuard checks a few things on your computer while it runs. The results are used right away and are not saved, logged or transmitted.
- Idle time. RestGuard asks the operating system how long it has been since the last keyboard or mouse input, so time away from the computer isn't counted as work. It never sees which keys you press or where you move the mouse.
- Meeting app detection. When a break is due, RestGuard checks whether a supported meeting app (Zoom, Microsoft Teams, Webex or Tencent Meeting) is in the foreground, running, or using the microphone, so it doesn't interrupt a meeting. To do this it reads the name of the foreground app, the names of running processes and the operating system's record of which apps are currently using the microphone, and compares them against that built-in list. RestGuard never accesses the microphone itself and never records audio, the screen or window contents.
Phone notifications (optional, off by default)
If you turn on phone notifications and enter an ntfy topic, RestGuard sends a notification to the ntfy server when a break ends, or when you press "Send test". The request contains only the topic name, a fixed title and message ("break is over") in your UI language, a priority and a tag. Like any internet request, it also reveals your IP address to that server.
The server is ntfy.sh by default, or a self-hosted server whose address you enter. That server is run by a third party (or by you), not by RestGuard, and its own privacy policy applies; see the ntfy.sh privacy policy. Anyone who knows a topic name on a public server can read its messages, so choose a topic that is hard to guess. Turn the option off, or clear the topic, to stop all network access.
Other network access
Apart from phone notifications, the app makes no network requests. It does not check for updates on its own; updates come through the Microsoft Store or the package manager you installed it with. Links in the About window open in your web browser only when you click them.
System permissions
- Full trust (Microsoft Store). RestGuard is a desktop app, so its Store package declares the
runFullTrustcapability. It is needed to show the break overlay above other windows on every monitor and to perform the on-device checks above. It is not used to collect data. - Start at login. If you enable it, RestGuard registers itself to start when you sign in. You can turn this off in the app or in your system's startup settings.
This website
This website is hosted on GitHub Pages and uses no cookies, analytics or trackers. To show the latest version and download links, your browser requests release information directly from the GitHub API. GitHub may log those requests and page visits as described in the GitHub Privacy Statement. If you report an issue on GitHub, what you post is public and handled by GitHub.
Children
RestGuard does not knowingly collect any information from anyone, including children under 13.
Changes to this policy
If RestGuard's data practices change, this page will be updated and the effective date above changed. The full history of this page is public in the repository.
Contact
Questions about this policy? Open an issue at github.com/HansTanzi/RestGuard/issues.