Clients
First-party clients are available for a variety of platforms. The future of these implementations and the possibility of new ones being added depend entirely on the bandwidth of the maintainers and the possibility of testing them, including access to relevant hardware and software. Currently, supported client platforms are:
- Linux: via
heartbeat-unix
, only supportsX.org
. Support for Wayland is planned, but not immediately in the works, and help in this area would be appreciated. - macOS: via
heartbeat-unix
. - Android: A Tasker project bundle is available on TaskerNet. An Android app is currently under development, but there is no ETA.
- Windows: via
heartbeat-windows
, tested on the latest stable build of Windows 10 and latest insiders build of Windows 11.
Implementing your own client to support other platforms is a straightforward process. You must implement the
API, specifically for the /api/beat
endpoint, and hit it every so often while the device is actively being
used. This can be determined by various factors such as the last time an input device was used, last time the screen was
unlocked, the last time the device was awakened from an idle state, etc. At the very least you will need to make network
requests, so devices without this capability cannot be supported.