Journal

Expo Router v3 Boilerplates With UI (Take the Routing)

The routing is the value; the bundled UI in most boilerplates is a placeholder you'll replace anyway.

Expo Router v3 Boilerplates With UI (Take the Routing): a phone toggle icon surrounded by location, calendar, settings, wallet and chart app icons on a coral gradient

TL;DR

Expo Router brings file-based routing to React Native (a folder is a route, layouts wrap groups). A boilerplate's value is that routing skeleton, not its bundled UI. Take the structure (tabs, stacks, deep linking) from a lightweight boilerplate, and build your actual screens from a free VP0 design. Vet dependencies before adopting.

Expo Router brings file-based routing to React Native: your folder structure becomes your navigation, the way Next.js works on the web. A boilerplate built on it gives you that routing plus some starter UI, so you can skip wiring navigation by hand. The short answer is, use Expo Router for clean, file-based navigation, pick a lightweight boilerplate for the structure (not a heavy one you fight), and build your actual screens from a free VP0 design. The routing is the value; the bundled UI in most boilerplates is a placeholder you will replace anyway.

Why file-based routing helps

Hand-wiring navigation (stacks, tabs, params) is fiddly and easy to get inconsistent. Expo Router replaces that with a file-based convention: a file in your app directory is a route, folders are nesting, and layouts wrap groups, which makes navigation predictable and reduces boilerplate. A starter built on it gives you a working tab-and-stack structure, deep linking, and typed routes out of the box. That structure is genuinely useful; what you do not want is a boilerplate whose bundled screens are a heavy, opinionated UI you then have to tear out. Cleaner navigation also means fewer bugs in one of the highest-traffic parts of the app, and a smooth first run matters because typical day-one retention is only around 25%. Take the routing, bring your own screens.

How to use an Expo Router boilerplate well

VP0 is a free iOS design library for AI builders. Start from a lightweight Expo Router boilerplate for the routing skeleton (tabs, stacks, a layout), then build each screen from a VP0 design with Cursor or Claude Code in React Native. Map your file structure to your app’s navigation (a tabs folder, nested stacks per tab), use Expo Router’s layouts for shared chrome, and keep the screens themselves yours. Vet any boilerplate’s dependencies before adopting it. The result: clean navigation you did not hand-wire, plus screens that look like your app, not the starter. For the auth-and-payments side of a starter, see React Native boilerplate with auth and payments UI.

What to take from a boilerplate (and what to replace)

Here is the split.

TakeReplace
File-based route structureBundled placeholder screens
Tab and stack layoutDefault theme and styling
Deep linking setupGeneric components
Typed routesOpinionated UI you did not choose
Sensible configHeavy unused dependencies

A worked example

Say you want a tabbed app fast. Start from an Expo Router boilerplate to get the tabs-and-stacks structure and deep linking, then delete its placeholder screens and build yours from VP0 designs (home, detail, profile) with Cursor. Use a layout file for the tab bar and shared header. You kept the routing skeleton and shipped your own screens, no hand-wiring, no inherited UI. Because routing is convention-based, adding a screen later is just adding a file, which keeps the app easy to grow. For the navigation feel itself, see how to build an iOS app with AI, and for styling the screens, React Native Paper modern UI kit.

Common mistakes

The most common mistake is keeping a boilerplate’s heavy bundled UI instead of replacing it with your own screens. The second is fighting a complex boilerplate when a lightweight one (just routing) would do. The third is not mapping the file structure thoughtfully, leading to messy nesting. The fourth is ignoring layouts, so shared chrome is duplicated per screen. The fifth is adopting a boilerplate without vetting its dependencies.

Key takeaways

  • Expo Router gives file-based, predictable navigation; a folder is a route, layouts wrap groups.
  • A boilerplate’s value is the routing skeleton; the bundled UI is usually a placeholder to replace.
  • Take the structure (tabs, stacks, deep linking) and build your screens from a free VP0 design.
  • Pick a lightweight boilerplate, map the file structure thoughtfully, and use layouts for shared chrome.

Frequently asked questions

How do I use an Expo Router v3 boilerplate with UI? Take the routing skeleton (file-based tabs, stacks, layouts, deep linking) and replace the bundled placeholder screens with your own, built from a free VP0 design. The routing is the value; bring your own UI.

What is file-based routing? A convention where your folder structure defines navigation: a file is a route, folders nest, and layouts wrap groups. Expo Router brings this to React Native, reducing hand-wired navigation.

Should I keep the boilerplate’s screens? Usually no. Most bundled UI is a placeholder. Keep the structure and config, and build your actual screens from a VP0 design so the app looks like yours.

How do I pick an Expo Router boilerplate? Prefer a lightweight one that gives you routing and config without a heavy opinionated UI, and vet its dependencies before adopting it.

Frequently asked questions

How do I use an Expo Router v3 boilerplate with UI?

Take the routing skeleton (file-based tabs, stacks, layouts, deep linking) and replace the bundled placeholder screens with your own, built from a free VP0 design. The routing is the value; bring your own UI.

What is file-based routing?

A convention where your folder structure defines navigation: a file is a route, folders nest, and layouts wrap groups. Expo Router brings this to React Native, reducing hand-wired navigation.

Should I keep the boilerplate's screens?

Usually no. Most bundled UI is a placeholder. Keep the structure and config, and build your actual screens from a VP0 design so the app looks like yours.

How do I pick an Expo Router boilerplate?

Prefer a lightweight one that gives you routing and config without a heavy opinionated UI, and vet its dependencies before adopting it.

Part of the AI App Builders & Vibe Coding Tools hub. Browse all VP0 topics →

Keep reading

React Native Boilerplate With Auth and Payments UI: a glass iPhone UI wireframe icon on a holographic purple gradient
Guides 4 min read

React Native Boilerplate With Auth and Payments UI

An RN boilerplate with auth and payments saves time, but those are the riskiest flows to inherit. Vet it, or build them from a free VP0 design and official SDKs.

Lawrence Arya · May 30, 2026
Kotlin Multiplatform on iOS: Share Logic, Keep Native UI: a glass iPhone app-grid icon on a mint and teal gradient
Guides 4 min read

Kotlin Multiplatform on iOS: Share Logic, Keep Native UI

KMP shares business logic, not UI. Build truly native SwiftUI navigation from a free VP0 design over your shared Kotlin code, so iOS feels like iOS.

Lawrence Arya · May 31, 2026
React Native WebView Wrapper: Do It Without Getting Rejected: a glass photo icon surrounded by chat, music, heart, camera and shopping app icons on a pastel gradient
Guides 4 min read

React Native WebView Wrapper: Do It Without Getting Rejected

Wrapping a web app in React Native is tempting but risky. Build a WebView shell from a free VP0 design with native chrome and real native value.

Lawrence Arya · May 31, 2026
Rork UI Library and AI App Builders: How to Choose: the App Store logo as a glossy glass icon on a purple and blue gradient with floating bubbles
Guides 4 min read

Rork UI Library and AI App Builders: How to Choose

Rork builds React Native apps from prompts. See where AI app builders shine, where a free design library fits, and how to get a polished result from either.

Lawrence Arya · May 31, 2026
21st.dev-Style Live Preview for Mobile App Templates: a glowing iPhone home-screen icon on a purple and blue gradient
Guides 4 min read

21st.dev-Style Live Preview for Mobile App Templates

Want a 21st.dev-style live preview for mobile? Browse VP0 designs that preview live, then run the generated code in Expo for instant fast-refresh.

Lawrence Arya · May 30, 2026
Capacitor Custom Native Header UI on iOS (Free Guide): the App Store logo as a glossy glass icon on a purple and blue gradient with floating bubbles
Guides 4 min read

Capacitor Custom Native Header UI on iOS (Free Guide)

A Capacitor app's web origin shows in the header. Make it native: respect the safe area, use iOS nav-bar conventions, and reference a free VP0 iOS design.

Lawrence Arya · May 30, 2026