Installation

Development

Get started with the code and develop your mobile SaaS.

Prerequisites

To get started with TurboStarter, ensure you have the following installed and set up:

Project development

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.

Install dependencies

Install the project dependencies by running the following command:

pnpm i

Why pnpm?

It is a fast, disk space efficient package manager that uses hard links and symlinks to save one version of a module only ever once on a disk. It also has a great monorepo support. Of course, you can change it to use Bun, yarn or npm with minimal effort.

Setup environment variables

Create a .env.local files from .env.example files and fill in the required environment variables.

Check Environment variables for more details on setting up environment variables.

Start Supabase

Ensure Docker is running, then start Supabase with:

pnpm db:setup

This command initiates the Supabase web server, you should see the following output in your console:

Started supabase local development setup.
 
          API URL: http://127.0.0.1:54321
      GraphQL URL: http://127.0.0.1:54321/graphql/v1
   S3 Storage URL: http://127.0.0.1:54321/storage/v1/s3
           DB URL: postgresql://postgres:postgres@127.0.0.1:54322/postgres
       Studio URL: http://127.0.0.1:54323
       JWT secret: super-secret-jwt-token-with-at-least-32-characters-long
         anon key: your-anon-key
 service_role key: your-service-role-key
    S3 Access Key: your-access-key-id
    S3 Secret Key: your-secret-access-key
        S3 Region: local

Use these credentials to setup environment variables for Supabase local development.

Start development server

To start the application development server, run:

pnpm dev

Your development server should now be running at http://localhost:8081.

Metro server

Scan the QR code with your mobile device to start the app or press the appropriate key on your keyboard to run it on simulator. In case of any issues check the Troubleshooting section.

Publish to stores

When you're ready to publish the project to the stores, follow guidelines and checklist to ensure everything is set up correctly.

Supabase hosted instance

Using Supabase's hosted instance is similar to deploying to production. Therefore, you still need to follow the checklist to ensure everything is properly configured.

Last updated on

On this page

Ship your startup everywhere. In minutes.Get TurboStarter