Skip to content

feat(cli): first-shot home apps — swipe back, quicker hold, status colours, no stale banner (cli 4.3.0) - #46

Merged
Mathieu2301 merged 1 commit into
mainfrom
feat/first-shot-nickel
Nov 14, 2026
Merged

Mathieu2301 merged 1 commit into
mainfrom
feat/first-shot-nickel

Conversation

@Mathieu2301

Copy link
Copy Markdown
Member

Makes an agent following the CLI ship a home app that needs no correction from the owner, from what Mathieu had to fix in a real house.

Starter / design

  • createNav() (starter theme.ts): one history entry per page (Android back, Safari tab swipe) and a left-edge swipe back that follows the finger, previous page visible behind, commit or spring back by distance and speed. Verified in the cloud browser inside a sandboxed frame like Miakapp's: tap, system back, slow half swipe (stays), long swipe and fast flick (go back).
  • holdToConfirm(): 0.3 s default, ease-out gauge, smooth drain on early release, haptic() on start and on fire (Android vibrate; iOS best effort). Measured: 0.36 / 0.67 / 0.85 at 50 / 100 / 150 ms, drains to 0 in ~300 ms.
  • .mk-status + state colours (green safe, orange to look at, gold on, red alarm only, always a word). Minuit --mk-warn is orange now.
  • .mk-stale-banner removed; .mk-app.is-stale dims values instead (the Miakapp bar shows the connection).
  • .mk-app: no text selection except fields.
  • design/runtime.ts is the single source for theme.ts and the gallery.

Agent guide: one green light for physical controls; direct device access, a hub is a temporary bridge; phone check through a 390 × 844 frame (the cloud browser ignores viewport emulation — measured), never install a browser; checklist.

Companion: Miakapp/Miakapp#299 (no text selection in the app frame).

222 tests pass; bun design/build.ts --check clean.

…lours, no stale banner (cli 4.3.0)

Design and starter:
- createNav() in the starter's theme.ts: pages slide in with a history entry
  each (Android back button, Safari's swipe in a tab) and a swipe back from
  the left edge that follows the finger, shows the previous page and commits
  or springs back by distance and speed (for the app installed on iPhone).
- holdToConfirm(): 0.3 s by default, an ease-out gauge that drains back
  smoothly when released early, haptic() on start and when it fires
  (navigator.vibrate on Android, best effort on iOS).
- .mk-status and state colours: discreet green for safe, orange to look at,
  gold for on, red for alarms only, always with a word. Minuit's warn is now
  orange, apart from the gold.
- .mk-stale-banner removed: the Miakapp bar shows the connection; the app
  dims old values with .mk-app.is-stale.
- .mk-app turns off text selection except in fields.
- runtime.ts is the single source of these helpers for theme.ts and the
  gallery, which gains a live swipe-back phone and the status colours.

Agent guide:
- one green light for physical controls at the start of the journey;
- talk to the devices directly, an existing hub is only a temporary bridge;
- check on a phone through a 390 x 844 frame, since remote browsers ignore
  viewport emulation; never install a browser;
- checklist items for all of the above.
@Mathieu2301
Mathieu2301 merged commit 8330702 into main Nov 14, 2026
1 check passed
@Mathieu2301
Mathieu2301 deleted the feat/first-shot-nickel branch November 14, 2026 21:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant