Most teams build the web app, then rebuild the whole thing for mobile. I refuse to write it twice.
One core, web and React Native, no rewrite
Most teams build the web app, then rebuild the whole thing for mobile. I refuse to write it twice.
The trick is drawing the line in the right place. My business logic (auth state, validation, data fetching, the rules that actually decide things) lives in a platform-agnostic core that knows nothing about the browser or the phone. On top of that sits a web layer for Next.js and a native layer for React Native and Expo. The core is shared. Only the thin presentation layer differs.
So when a product needs a mobile app, I'm not starting over. The hard part, the logic, already exists and is already tested. What's left is the native shell: screens, navigation, the components that have to feel native instead of like a website in a WebView.
That's how the same platform runs Next.js dashboards and an Expo mobile app without two teams maintaining two copies of the truth. Fix a validation rule once, and web and mobile both get it.
Plenty of engineers know React. Fewer have structured a codebase so the jump to React Native is a shell, not a rewrite.
Building for web and mobile and tired of maintaining both? Ask me how I split the core from the shell.