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:
- Node.js (20.x or higher)
- Docker
- pnpm
- Supabase account (optional for local development)
- Firebase project (optional for some features - check Firebase project section for more details)
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:
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:
This command initiates the Supabase web server, you should see the following output in your console:
Use these credentials to setup environment variables for Supabase local development.
Start development server
To start the application development server, run:
Your development server should now be running at http://localhost:8081
.
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