Skip to content

FAQ

Yes. The boilerplate is MIT-licensed. Apps generated with the CLI don’t include the boilerplate’s license, so they’re yours to license however you like, including closed-source commercial apps.

How is this different from create-expo-app?

Section titled “How is this different from create-expo-app?”

create-expo-app gives you a minimal starting point. This gives you a structured, production-ready app: data fetching, forms, encrypted storage, i18n, three environments, EAS workflows, tests and lint rules, all wired together and working. And you choose the navigation, state and styling libraries up front.

No. It uses native modules (MMKV, Unistyles, Reanimated, keyboard controller) that Expo Go doesn’t include. yarn ios:development and yarn android:development build a development client the first time, and after that you get the same instant reload as Expo Go.

Use the CLI. It gives you only the stack you picked, sets your app name and bundle id, and makes a clean first commit. Clone the repo only if you want to contribute to the boilerplate itself.

The defaults (Expo Router, Zustand, Unistyles, TypeScript) are the most common choice and what the template itself uses. Pick:

  • React Navigation if your team already knows it or you need fine control over navigators.
  • Redux Toolkit if your team uses Redux elsewhere or needs Saga for complex async flows.
  • Tailwind if your team writes Tailwind on the web. StyleSheet if you want no styling dependency.
  • JavaScript only if your team doesn’t use TypeScript. You lose typed routes, typed translation keys and typed env vars.

Yes. Set EXPO_PUBLIC_API_URL, replace the demo authenticate() function in src/features/auth/api with your login call, and adjust the pagination helpers in src/services if your API doesn’t page with limit and skip. Firebase, Supabase or GraphQL can be added like any other library.

The app runs on the web with yarn web (React Native Web is included, and Expo Router handles URLs). The focus is iOS and Android, so test web-specific layouts yourself.

Use Expo’s upgrade guide: npx expo install expo@latest --fix, then yarn prebuild:development and test. Native folders aren’t committed, so there’s nothing native to merge by hand.

Yes. Fork the repo, change the template, and publish the CLI under your npm scope, such as @your-org/create-expo-boilerplate, with restricted access. Your team then runs npm create @your-org/expo-boilerplate.

Where do I report bugs or ask for features?

Section titled “Where do I report bugs or ask for features?”

Open an issue on GitHub.

Mantu (EndLess728), a senior React Native and Expo developer. He also maintains react-native-mediapipe-posedetection and expo-check-installed-apps.