Installation
How to setup, install and run AppKickstarter.
Note
Please make sure you have completed all the prerequisites and setup all the services before proceeding.
Project Initialization
Start your project using cloning the Git repository:
git clone ...
Install Dependencies
At the repository root, just the following command to install dependencies:
yarn install
Set Environment Variables
In the future, you'll be able to use a command line tool to automate this setup.
Create a .env.local
at the project root, and update the following with your environment variables from the previous section (Accounts):
EXPO_PUBLIC_POSTHOG_API_KEY=
EXPO_PUBLIC_POSTHOG_HOST=
EXPO_PUBLIC_SUPERWALL_IOS_PUBLIC_KEY=
EXPO_PUBLIC_SUPERWALL_ANDROID_PUBLIC_KEY=
EAS_PROJECT_ID=
Then, open up apps/expo/app/_layout.tsx
, and update the dsn
value with your Sentry dsn
.
...
Sentry.init({
environment: __DEV__ ? "dev" : "prod",
dsn: "https://<string of characters>.ingest.us.sentry.io/<some numbers>",
...
Next, update apps/expo/app.config.ts
and update the Sentry configuration at the bottom with your Sentry values:
{
url: "https://sentry.io/",
project: "react-native",
organization: "<your organization ID>",
},
Finaly, we initialize EAS:
cd apps/expo
eas init
Build the App!
All the setup is now done and you are ready to build the app!
For development, we need to build a development client. The reason is because we use some native packages that aren't part of Expo Go, so we need to compile a custom build with everything we need.
Build Locally (Recommended)
Build via EAS
Soemtimes building the app locally doesn't work, and you run into various errors. You can leverage EAS to build your app for you instead.
All you have to do to create a development client is run the following commands:
To build for a simulator for the platform of your choice:
yarn eas:build:ios:simulator
yarn eas:build:android:simulator
To build for your physical device for development:
yarn eas:build:ios:dev
yarn eas:build:android:dev
From there, it will upload your app bundle to EAS' servers, it will take care of the build, and then give you a QR code to scan to install the application!
If you are on Windows and want to build & test your iOS app, then building via EAS is the only solution.
Run the App
Now that you have the built application, start up the Expo development server:
yarn start:expo
Make note of the IP and port the development server is running on (for example: your IP might be 192.168.1.10
and using port 8081
)
And then start up your development client! Enter the details of your development server http://{IP}:{PORT}
and your development client will download the JavaScript bundle and run!
Congrats! Your app is now up and running.
Time to learn about the codebase, and how to make this app yours.