An iOS and Android app, ready to rename.
An Expo app with tabs, a theme that follows the phone, custom fonts, an API client and data fetching in place — so day one goes to the app, not the setup.
Use it when
You're starting a mobile app that talks to your own API and want routing, theming and data fetching ready from day one.
The app needs an API to talk to? template-backend instead →What's included
Done from the start.
Navigation
Expo Router with three tabs and a stack for modals, with typed routes.
Theme
Light and dark colours, spacing and type sizes that follow the phone's mode.
Fonts
Manrope and Playfair Display, with the splash screen held until they load.
API client
Get, post, put, patch and delete with a timeout, clear errors and token sign-in.
Data fetching
TanStack Query with sensible defaults for caching and retries.
EAS
Build profiles for development, preview and production.
Get started
pnpm install
cp .env.example .env
pnpm start # press i / a for a simulatorStructure
app/ Expo Router screens and layouts
blocks/ theme tokens, toast config, UI primitives
lib/ contexts, query client, hooks, utils
services/ API clientEnvironment variables
- EXPO_PUBLIC_API_URL
The EAS profiles set their own API address for preview and production — point it at your API.
Good to know
- Add your own icon and splash image: app.json points at files that aren't in the repo.
- Change the app name, bundle id and EAS project id before the first build.
Built with
- Expo SDK 54
- React Native 0.81
- React 19
- Expo Router 6
- TanStack Query
- TypeScript
- EAS
More templates
template-next-supabase
MITNext.js and Supabase, where a typed data layer owns every query and every authorization check.
Next.js 16 · React 19 · Supabase
Read more →template-next-mongo
MITNext.js and MongoDB, where a shared data layer owns the client, schemas, queries and authorization.
Next.js 16 · React 19 · MongoDB driver 7
Read more →template-monorepo
MITA Next.js web app, an Express API and Inngest background jobs sharing one database schema.
Next.js 15 · React 19 · Clerk
Read more →template-backend
MITA REST API in Express and TypeScript with sign-in, Postgres, Redis and validation in place.
Express 5 · TypeScript · Clerk
Read more →template-gateway
MITA Next.js layer between your apps and an existing API, keeping the API key on the server.
Next.js 15 · React 19 · TypeScript
Read more →
Let's build
the next thing.
You talk to me, not a salesperson. The first call is free.
— Kenny
psst, it takes 15 min
Write, and I reply the same working day.