GlassKit UI

Example apps

Complete multi-screen apps composed from the real components — drive them with your keyboard here, or scan the QR and run them on your glasses. Workout (Navigator + Timer + destructive Confirm) and Messages (threads + ComposeFlow replies).

Single components show the pieces; these show the rhythm — how Navigator, focus memory, the back gesture, and one-task-per-view compose into an app. Arrow keys move the ring, Enter pinches, Escape is the back gesture. Each QR installs the example as a standalone app on real glasses.

Workout

A fitness companion: list → live session → rest timer, with a destructive end-confirm that seeds the ring on the safe action.

Workout

Today

Pinch opens · middle pinch backs out

600 × 600 · live
  • Navigator hierarchy with focus memory (pop lands on the row you came from)
  • Screen status slot (live GPS dot) and the one-task-per-view rhythm
  • Timer with pause/resume; EmptyState for unvisited history
  • Confirm destructive — a blind pinch can't end the run

Messages

An inbox: thread list → conversation, replying through ComposeFlow's picker — the realistic text path on a keyboard-less platform.

Messages

Inbox

Pinch opens a conversation

600 × 600 · live
  • Navigator push with params (the thread you opened)
  • ComposeFlow reply: back gesture closes the picker, not the app
  • ChatBubble thread + an accent Toast confirming the send
  • List rows with Avatar leading slots

Want this shape as a starting point? npm create glasskit my-app scaffolds the shell, then vendor what you see here:

npx @glasskit-ui/cli add navigator list timer confirm compose-flow chat-bubble