Installation
Before using NativeLaunch, make sure you have the following tools installed on your system. Here's a step-by-step guide to setting up the tooling needed for React Native and Expo development. This is a prerequisite for setting up the NativeLaunch project.
Required Tools
Before you begin, make sure the following is installed on your system:
Run on Simulator
Follow the steps bellow to get the core application up and running in under 5 minutes. After that you can start activating other services or setting up any of the demo applications.
Expo Go limitations
This template uses native modules that cannot run in Expo Go. Some examples include:
react-native-mmkv(storage)- Authentication (Google / Apple)
- Push Notifications
- In-App Purchases (RevenueCat)
- Error tracking (Sentry)
π To use these features, please run the project with EAS Build or expo prebuild and a custom development client.
Set up environment
We won't copy the official docs, as there is quite a bit of setup you need to make to get started with iOS and Android development and it also depends what approach you want to take.
Check this official setup guide to get started. After you're done with the setup, go back to this guide and continue with the next step.
You can pick if you want to develop the app for iOS or Android by using the real device or the simulator.
Recommendation
We recommend using the simulators and development builds for development, as it is more real and reliable approach. It also won't limit you in terms of native dependencies (required for e.g. analytics).
Of course, you can start with the simplest approach (using Expo Go) and when you iterate further, switch to different approach.
Get the code
Right after purchase, we send a GitHub invitation to the email you used at checkout. Accept the invite to get access to the private repository with lifetime updates.
π If your GitHub account is registered under a different email, just add your purchase email to GitHub (GitHub β Settings β Emails β Add email) and accept the invite again. Alternatively, reply with your GitHub username, and weβll resend the invite.
Once youβve accepted the invite,, clone the repository:
git clone git@github.com:nativelaunch/expolaunch-template.git your-app-name
cd your-app-nameBy default, the project is linked to the NativeLaunch repo. If you want to push code to your own GitHub repo, reset the origin:
git remote set-url origin {your-git-origin}Otherwise, use the ZIP archive from your purchase email:
- Download and unzip the archive.
cdinto the project folder.
Cloning the repo is recommended β it makes pulling updates easier. The ZIP is a simple fallback if you donβt use GitHub access.
Install dependencies
npm installConfigure the app
Before launching, configure your environment variables β this is the only setup required to run the project.
Quick setup tip
You can fully configure Supabase (including auth) in ~15 minutes β steps are clear and minimal. The app will launch even if other integrations (Google Sign-In, OneSignal, RevenueCat) are not set up β you only need Supabase to get started.
Environment variables are declared in your .env file.
The centralized env.js file validates them and passes the values into Expo during build.
To run the project, you only need the following variables:
# .env
EXPO_PUBLIC_SUPABASE_PROJECT_URL=https://example.supabase.com
EXPO_PUBLIC_SUPABASE_ANON_KEY=your-anon-keyThese two variables connect your app to Supabase, which handles data and authentication. Once your Supabase project is created, make sure to set up:
- Supabase database (tables and policies)
- Email login (the simplest and fastest authentication method)
If you just want to preview the app without creating a Supabase account, you can enter any random strings for these two variables. The app will still launch and show the onboarding and login screens β but features like authentication or data sync wonβt work until real keys are added.
Learn more about configuration here: App configuration β
Start development server
To start the application development server, run for iOS:
npm run iosRun for Android:
npm run androidYour development server should now be running and app opening in simulator

The app will start right away with local data β no extra configuration is required to preview it. However, features like authentication, notes, or payments will require you to finish the Supabase setup.
What's next?
You now have NativeLaunch running locally π The core setup is complete β Supabase is connected, and the app is live in the simulator.
From here, you can start customizing and extending the project:
- Add Google or Apple authentication
- Enable push notifications with OneSignal
- Configure in-app purchases with RevenueCat
- Set up error tracking with Sentry
- Customize the app β theme, icons, and branding
Each integration is optional β start small, add services when you need them.