A countdown timer is the perfect use case for Live Activities — and also a great way to discover everything the ActivityKit docs gloss over. When I added Live Activities to Cadento, my SwiftUI Pomodoro app, the "happy path" took an afternoon. The edge cases took a lot longer.
Here's the practical version: what actually matters when you put a focus timer on the lock screen and the Dynamic Island.
The mental model
A Live Activity has three things you define:
ActivityAttributes — the static data, fixed for the lifetime of the activity (e.g. the session's total duration, the task name).






