devonzuegel / ketchup-club

1 stars 1 forks source link

Development

Install dependencies

yarn install

Frontend

This is the command Devon uses to run the frontend:

yarn start

If that doesn't work, you may first need to add expo:

yarn add expo

Building native code

Now that we have a native module, it's a little more involved to build the app.

A native build requires cocoapods, which can be installed with Homebrew:

brew install cocoapods

We also require Xcode with the iOS 17.2 SDK installed. To ensure the correct SDK is installed, open Xcode and go to Settings > Platforms and get the iOS 17.2 SDK.

Then you can build and run the app using

yarn ios

Backend

The backend is in the smallworld repo. (Yes, I was lazy and created just 1 backend to serve 3 different apps. Sue me.) Go to that repo to run the backend.

You will need to use ngrok to expose the backend to the internet. Run this command to do so:

ngrok http 3001 # or whatever port you have the backend running on

ngrok will give you a URL that you can use to access the backend from the frontend. Replace the first part of DEVELOPMENT_URL in api.js with the URL that ngrok gives you.

Builds

Internal build

eas build --profile preview --platform ios

TestFlight build

bin/build-ios.sh
bin/submit-ios.sh

TODOs

Phase 1: Basic functionality

Phase 2: Before friends use it

Phase 3: Before making it public

Phase 4: Enhancements

Phase 5: Low priority polish