About
TimeTagger Scheduler turns recurring schedules into future TimeTagger records. It is a small Python application for keeping predictable routines on the calendar without entering every occurrence by hand.
Why I Built It
Recurring work should only need to be described once. The challenge is automating that repetition while leaving room for real life: edits, skipped occurrences, and changing plans.
How It Works
Schedules live in YAML. Daily, weekly, and monthly recurrence rules are expanded into timezone-aware occurrences, then materialized through the TimeTagger API. Deterministic UUIDv5 identifiers give each occurrence a stable identity, making repeated runs idempotent.
Safety Model
The scheduler preserves manual modifications and avoids recreating deleted or hidden occurrences. Dry-run mode previews intended changes, and connectivity and configuration checks help catch problems before a scheduled run. Review the repository documentation before connecting it to your own records.
Deployment
Run it locally, in Docker, or through Windows Scheduled Task. Choose the environment that fits your existing setup and run it regularly to keep future records populated.
Technology
Python, YAML, requests, PyYAML, and the TimeTagger API, with timezone-aware recurrence scheduling and deterministic event identities at the core.