Next.js, wrapped in Capacitor.
One web codebase becomes an iPhone app, an Android app and a website. Face ID and vibration come from Capacitor plugins.
- Instead of
- React Native with Expo, which builds the screens from native parts.
- Why
- Next.js was the stack I'd already shipped with agents on an internal tool, so I could spend my time on design instead of a new framework. And because the app is a website underneath, anyone can try it from a link, like on this page.
- The cost
- There's no Expo Go, so testers install a real build. And a website doesn't feel native for free: the sheet curves, haptics and crisp artwork on iPhone all had to be built on purpose.


Claude Code
Codex
Cursor










Vercel