Skip to main content

FlexiTracker daemon (Python)

The FlexiTracker activity daemon: a pure-Python program that captures idle/active transitions and ships back-dated events to the backend. Pure stdlib, no compiled extension, so it installs with uv into a user profile — no admin rights and no compiler — which is what lets it run on managed machines that block unsigned executables. OS idle detection is done through ctypes (Windows GetLastInputInfo, Linux XScreenSaver).

Install

Recommended (all platforms):

uv tool install flexitracker

Or, on a machine that allows executables, download the standalone flexitracker / flexitracker.exe from the GitHub Releases page (it bundles its own Python runtime). See install/README.md for per-OS auto-start and the Windows SmartScreen trust step.

Use

flexitracker configure --key <ACCESS_KEY>   # authorize this machine, then self-test
flexitracker test                            # connectivity check, sends no data
flexitracker                                 # run the daemon

Develop

uv sync
uv run pytest        # unit tests + the 24 behavioural vectors (tests/vectors/)

The behavioural vectors in tests/vectors/ are the oracle for the state machine (back-dating, suspend reconciliation, the emit watermark, the return-to-work clock). Any change to that logic must be reflected in a vector.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flexitracker-0.2.1.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flexitracker-0.2.1-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file flexitracker-0.2.1.tar.gz.

File metadata

  • Download URL: flexitracker-0.2.1.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for flexitracker-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a99a4204bb5cbb684dc1c62c5ec2ebde4b564eab0634f949c430b334eb33e52d
MD5 c4fc3c7a0c1f142de6da84479bec2d40
BLAKE2b-256 9c286b4b8cf1d428a585347b8a1e01301f771ecc361b789a92cb4eade84973ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexitracker-0.2.1.tar.gz:

Publisher: release.yml on jvuori/flexitracker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file flexitracker-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: flexitracker-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for flexitracker-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 94d4060572cbf4e63a0fccdff4440ab0246f95701d654ef349db3245c195b527
MD5 80420a8b9ea7a9e741ef38ea3be8bf3f
BLAKE2b-256 98dd6c02446caf3674279152a9faa7f2e95376a0e5c5357bebecd61c55b88163

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexitracker-0.2.1-py3-none-any.whl:

Publisher: release.yml on jvuori/flexitracker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.4.1

2 files

0.4.0

2 files

0.3.1

2 files

0.3.0

2 files

This release

0.2.1 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page