Installable PWA for labeling a test phone with an identifying lockscreen wallpaper. Open it from the home screen on the phone itself, edit Label + Notes, and download or share a wallpaper sized for this Host. Devices live in IndexedDB on the phone — there is no shared server catalog.
Remix 3 (server-driven UI in dev, static
client build for production). Deploy dist/ to Netlify.
npm i
npm run dev # Remix server with Node --watch (full restarts)
npm run hmr # Remix UI/module HMR (preferred for UI work)
npm run build # icons + static dist/ + service worker
npm run preview # serve dist/ locally
npm start # production Remix server (optional)
npm test
npm run typecheckDeploy:
npm run build && netlify deploy --prod --dir=distapp/ui/app-shell.tsx— document shell + install hint + client appapp/assets/app.tsx— New / Continue / Browse + editor (IndexedDB)app/data/devices.ts— Device persistence in IndexedDBapp/data/wallpaper.ts— canvas export (PNG Quality / JPEG Size)app/data/shortcuts.ts— hardcoded Notes insert chipsscripts/build.tsx— static build +sw.jspublic/manifest.webmanifest— PWA manifest
Domain language: see CONTEXT.md. Storage decision: docs/adr/0001-local-first-indexeddb.md.