- CalDAV
- CardDAV
- Markdown
- Self-hosted
For people who keep their life in notes.
tidl keeps your calendar, tasks, notes and contacts in one place, with a Focus list that sorts them by what is coming up next. It uses CalDAV and CardDAV, so the apps on your phone keep working, and it can pick up tasks from your markdown notes.


Four views of the same things
Focus
Events, tasks and awaits in one list, sorted by how soon they need attention.
- Events, tasks and awaits from every calendar, note and markdown file
- An event that is about to start moves above your tasks
- Re-ranks every minute, with today, 3-day and 7-day horizons

Tasks can live in your markdown notes
Point tidl at a folder or a git repo. Tags in your notes become tasks next to your calendar. They can also become awaits: things you are waiting on from someone else, like a quote or a reply. An await stays out of the way until its date, then shows up in Focus so you remember to follow up.
# Launch week - #task/p5/finish-export-writeup - #await/2026-09-28/signed-contract-acme - #task/p30/reply-vendor-rfp - #task/2026-10-11/renew-passport Lunch with @Alan Turing: send the deck by Friday.
- 1Signed contract from Acmeawait · due 2026-09-28URGENT
- 2Finish export writeuplaunch.md · p5URGENT
- 3Team standupwork · 09:30 tomorrowUPCOMING
- 4Reply vendor RFPlaunch.md · p30LATER
Project Phoenix — Kickoff Notes
Phoenix is the internal codename for the replatforming effort. The goal is to move off the legacy batch pipeline without a big-bang cutover. Everyone agreed that a strangler-fig approach is the least terrifying option.
Goals
- Zero data loss during cutover.
- No more than a 5-minute read-only window.
- Rollback plan that a tired on-call engineer can execute at 3am.
Immediate actions
- Draft the strangler-fig migration design doc. Phoenix Migration Design
- Inventory every consumer of the legacy batch output. Legacy Consumer Inventory
- Get budget sign-off for the extra staging cluster. Phoenix Staging Budget
- Book the war room for the cutover weekend. War Room Booking 2026-11-20
- Await the security review of the new VPC peering setup. Security Vpc Review 2026-10-28
Open questions
Who owns the schema registry after the move? Nobody has volunteered, and it’s going to bite us. Schema Registry Ownership
Do we keep the old dashboards running in parallel for a quarter? The cost is small but the confusion is real. Legacy Dashboard Parallel Run
Someone floated rewriting the scheduler in Rust. Fun idea, probably a trap.
One small program
Written in Rust. The server, the web app and the sync engine ship as one executable. Run it on a Pi, a NixOS box or Windows.
Works with the apps you have
Standard CalDAV and CardDAV, so your phone and desktop clients sync as they always have.
Free and open source
The code is meant to be easy to read and change, and contributions are welcome. Your data stays in files and a database on your own machine.
If this sounds like something you’d use, here’s how to set it up.
Support tidl
tidl is free and built in spare time. If it is useful to you and you would like to help, you can support puckles with a coffee on Ko-fi. Bug reports and pull requests help just as much.