Quick start
-
Create the app
Terminal window npx create-expo-boilerplate@latest my-appTerminal window yarn create expo-boilerplate my-appTerminal window pnpm create expo-boilerplate my-appTerminal window bun create expo-boilerplate my-appPress Enter at each prompt to take the default: Expo Router, Zustand, Unistyles, TypeScript, ESLint and Husky. Or skip the prompts with flags, see CLI options.
-
Run it
Terminal window cd my-appyarn ios:development # or: yarn android:developmentUse the package manager you created the app with (
npm run ios:development, and so on). The first run generates the native projects and compiles them, so it takes a few minutes. After that, Metro reloads JavaScript changes instantly. -
Log in
The app opens on a login screen. Sign in with any email and a password of at least six characters. The demo login stores a session locally. Replace it with your own API in
src/features/auth. -
Look around
The Home tab loads a paginated list of posts from DummyJSON, a free demo API. Scroll to load more, tap a post to fetch its details. Settings has a language picker (try Arabic for right-to-left) and a logout button.
What the CLI did
Section titled “What the CLI did”- Copied the template and applied your choices: navigation, state, styling, language, tooling.
- Set the app name, slug, URL scheme and bundle id from the folder name or your flags.
- Created
.env.development,.env.stagingand.env.productionfrom.env.example. - Wrote a README that describes exactly the stack you picked.
- Installed dependencies, set up git (and Husky hooks), and made the first commit.
Next steps
Section titled “Next steps”- Make it yours: bundle id, app name, icons and your API.
- Project structure: where things live.
- Adding a feature: a screen, API hook, store and translations, start to finish.