Latch

Playing

Playing day to day

The dashboard, the clock and everything that moves it โ€” cage up, dice, hidden timer, freeze, adjust, undo, the emergency key, the retroactive log, photo check-ins and sharing.

On this page

The Dashboard is the play surface. Everything on it either shows the clock or moves it; every rule and every editor lives on Settings instead. Each card carries a โš™ that jumps to its own settings section.

The timer

The ring is the session. Its state is one of:

State Meaning
UNLOCKED No active lock. The Cage up card is showing.
LOCKED Clock running. Time remaining counts down in the ring.
FROZEN Clock held. Remaining does not move until you unfreeze or the freeze expires.
TIME SERVED Remaining reached zero. Unlock is clean.

The facts row under the ring shows started, ends, elapsed, adjustments and frozen time. The math behind it is one line, and it is computed from the log every time the page loads:

end = started + sentence + ฮฃ adjustments + ฮฃ frozen time

Nothing stores "time remaining". Refreshing, closing the tab, or the server restarting cannot change it.

Cage up

Days, hours, minutes. Minimum one minute. Lock earns 20 XP. The more fold holds:

The Clock card

Every adjustment is an event you can read on the Log page. There is no way to change the clock without leaving a record.

The Session card

Early is allowed

The emergency key is a feature. See Consent, safety, and the emergency key.

The actions row

Directly under the timer: ๐Ÿ“ธ photo check-in ยท ๐Ÿพ Handler ยท ๐ŸŽก wheel ยท ๐Ÿ“‹ training. Each module puts a badge on its button when it wants you โ€” due, overdue, 3 open, ready. A lit button is the game asking. The cards below the row are each module's summary; their pages are where you play them.

Photo check-in

๐Ÿ“ธ opens the camera or photo picker and submits the moment you pick. The picture is the entry: event kind photo (+5 XP), filed in the gallery, attached to whichever lock was on at that time. The fold under the button takes a caption and a when for a photo taken earlier.

Limits: JPEG/PNG/WebP up to 40 MB. iPhone HEIC is refused with a clear message โ€” set the camera to Most Compatible or convert first (Troubleshooting).

The retroactive log

Every write in Latch takes an optional when โ€” the collapsed โฑ not now? fold under each form, one local-time field. Leave it empty for right now. Fill it in for something that already happened: a lock that started before you opened the app, a task you finished at lunch, a reflection you wrote on paper last night.

The rules, enforced on the server:

Anything recorded more than two minutes after its own time carries a โ†ถ logged later badge in the log, permanently, with the time it was actually recorded. The record stays honest about when you told it.

Undo

Undo never deletes. It appends an undo event and strikes the target through; the struck row stays in the log, and the clock, XP and every stat stop counting it. Only the newest event of the active session is a candidate, and the button names it.

Share

Stamped photos and recap cards carry a ๐Ÿ“ค share button. On a phone over HTTPS it opens the share sheet with the JPEG; anywhere else it downloads. The file is re-encoded on the way out, so EXIF and GPS never travel with it. What is on the image is decided by your stamp tokens (Customise โ†’ Stamps).

The Log

/timeline is every event, newest first, with chips to filter by module. Each row shows its kind, its effect on the clock, who did it (you, the system, a module, the API), any XP, and the logged later badge if it was backdated. Voided rows are struck through and kept.

Calendar

A month at a glance. Each day carries one dot per activity, in that activity's own colour โ€” so the colours tell you what you did, not merely how much. Hover a dot for the name and the count.

A dot drawn as a hollow ring instead of a filled circle was logged later. That distinction is deliberate and it matters: Latch lets you log for a day that has already passed, which can repair a streak โ€” that is what the feature is for. But if a repaired day looked identical to a lived one, the retroactive log would become a way to quietly rewrite your own history. The Log marks the same entries with โ†ถ logged later.

Below the grid, Where things stand gives each activity its headline numbers: how long since the last one, how many days you have done it, the current streak, time spent, and this week against its target. These are the same figures the stat tokens print, from the same code โ€” a tile and a share card can never disagree about your streak.

A stat with nothing to say is left out rather than shown as a zero. "Never" is not 0s, and an activity with no streak shows none at all โ€” see Activities.

Where the rules live

Nothing on the dashboard edits a rule. Prompts, wheel segments, the training library, the Handler's cadence, quick buttons, stamp layouts โ€” all of it is on Settings, one page, one section per module. See Customise your experience.


This page also ships inside the app, at /guide โ€” so your own instance always serves the guide for the version you are running, with the internet unplugged. Get Latch ยท Something wrong here? Tell me.