macOS app · Tauri
Tempo
A calm task manager for the Mac. It ranks your tasks by how important they are, how soon they're due and how much time you actually have left today, so you can see what to do next.
Try it · Quick add
Type it the way you'd say it
One line becomes a task. This box runs the same parser as the app: it picks out how long the task takes, when it's due, a time block, how important it is and its project, and whatever it doesn't recognize stays in the title. The demo knows four projects: School, Engineering, Newspaper and Guitar.
Try it · Recommended order
Why this task comes first
Every task gets a score from 0 to 100, from four parts. Change any task, or how much free time you have left today, and the list re-ranks with the app's real scoring code.
Urgency rises along an S-curve as the deadline gets closer: about half three days out, 0.8 a day out, full once it's due. A task with no date starts at 0.15 and slowly climbs to 0.30 over a month, so it never vanishes.
Overdue adds a capped boost, so a trivial overdue chore can't bury an important task due tomorrow. Fit gives full credit to every task that fits in your free time, so short tasks don't win just for being short.
Screenshots
What it looks like
Screenshots coming soon.
Features
What it does
- Today, plannedOverdue and due-today tasks, plus up to five suggestions that fit the time you have left. A bar shows planned against available time and warns when the day is overfull.
- Day scheduleDrag tasks onto a timeline to give them a time block. Calendar events show up as busy time, and overlaps are flagged, never overwritten.
- Focus timerPomodoro-style sessions from any task, with a timer in the menu bar. It stays correct through sleep and restarts, and it never marks a task done for you.
- RemindersBefore time blocks and deadlines, each sent only once. Reopening the app never floods you with old ones.
- Your order or its orderPin tasks to keep them on top, or switch to Manual order, which never reshuffles.
- Offline and privateOne SQLite file on your Mac. No account, no server, no API keys. Export and import a JSON backup at any time.
Under the hood
Two decisions I'm happy with
Deadlines stay where you put them. A due date is stored as a local wall-clock value ("Friday", "3:00 PM"), not a UTC timestamp. So "Friday 3pm" is still Friday at 3pm after a daylight-saving change or a trip to another time zone.
A timer that can't drift. The focus timer never counts down in memory. It stores when the session started and works out the time left from that, so closing the lid, hiding the window or restarting the app doesn't throw it off.
Keyboard
Built for the keyboard
| Quick add from anywhere | ⌃⌥Space |
| New task | ⌘N |
| Complete selected | ⌘↩ |
| Start / pause focus | ⌘T |
| Day schedule | ⇧⌘D |
| Pin / unpin | ⇧⌘P |
| Recommended / Manual order | ⌥⌘O |
| Undo | ⌘Z |
Build it yourself
Run it on your Mac
You'll need macOS 14 or later, Node 22+, and the Tauri prerequisites (the Rust toolchain and the Xcode Command Line Tools).
git clone https://github.com/Eitan-Alperstein/tempo
cd tempo
npm install
npm run tauri dev # run the app
npm run tauri build # build Tempo.app and a .dmgThe full source code for Tempo is on GitHub.
View on GitHub