appkickstarter logoAppKickstarter

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 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.