Marketscanner
Market value supplement · consumer web · form MW-0
Surface
CONSUMER WEB
Build
0.0.1
Status
FEED LIVE
Sec. 01 — What this is
the console
The shell, printed
Three things had to exist before any product screen could be built without being restyled twice: a bootable app with real URLs, an API client, and the design system every surface reads. They exist now — tokens, primitives, and the one signature motion. The live tape is built on top of them.
Sec. 02 — What exists
5 pieces
01
Design tokens
One hand-authored source; generated CSS + JSON artifacts, sync-checked by a test.
src/lib/design-tokens
02
Design primitives
Screen, rules, controls, fields, masthead, stamp and the one signature motion.
src/design
03
API client
Error envelopes, cursor pagination, idempotency keys, single-flight 401 refresh.
src/lib/api-client
04
Accounts and billing
Sign up, verify, sign in, reset, Stripe checkout and portal, devices, support.
app/*.jsx
05
Expo shell
expo-router with static web output — every route exports as a real HTML file.
clients/consumer/app
Sec. 03 — What does not exist yet
held, not forgotten
01
Window-sticker hero and the live-tape row
Epic 6.5
PENDING
02
Alerts and the deal board
Epics 8–10
PENDING
03
Operator CRM (its own SPA, same tokens)
Epic 7
PENDING
04
Native build, secure token storage, static Archivo
Epic 14
PENDING
Sec. 04 — Routes
static export
/
This page — the shell home
/feed
The live tape (story 6.4)
/zones
Your coverage — zones and filters
/design-system
Token, type, stamp and motion specimen
/signup
Create account
/verify
Email verification landing
/login
Sign in
/forgot-password
Request a reset link
/reset-password
Set a new password
/account
Plan, usage, devices, support
/billing/complete
Post-checkout return page
404
Anything else — the not-found sheet
Sec. 05 — Token flow
tokens.js
↓ npm run tokens:build
dist/tokens.css · dist/tokens.json
↓ metro watchFolders
src/theme · src/design · app/+html.jsx
One hand-authored source. Every other surface — this app, the Epic-7 CRM, the marketing site — reads the generated artifact, so the palette cannot drift by being retyped, and the primitives above it mean a screen never re-derives a button.
NOT MANHEIM MMR · NOT AFFILIATED WITH FACEBOOK
FORM MW-0 · SHELL HOME