iOS & Android app for SEEUS (Student Eyes and Ears for University Safety)
Built using React Native.
Created for EMU CS Senior Capstone Project, Winter 2020.
- Prequisites:
- Clone repo
git clone git@github.com:seeus-dev/seeus-app.git cd seeus-appcp .env.example .envyarn installyarn start- Will automatically install expo-cli
- Starts the dev server (Metro Bundler)
Currently there is one envionmental variable in .env, API_BASE_URL, which needs to be filled to the correct base URL (protocol and host) if you are running a local instance of the backend. If you want to use the app on your phone while connecting to a local backend instance, you can use an ngrok tunnel. You would set API_BASE_URL to https://[yourcode].ngrok.io. (This needs to be added as a trusted OAuth callback URL in Google Developer Console. See seeus-app/seeus-backend repo.)
The Metro Bundler runs the TypeScript compiler whenever the code changes. It also serves the code to developer devices connecting to it via the Expo mobile app, enabling hot swapping of modules as the code changes. (In other words, instant updates without losing current state of the app.)
To run the app on your device: Download the Expo mobile app (Android, iOS) and scan the QR code outputted in the console. In iOS you have to scan the QR code from the camera app.
To keep a consistent style, we are using ESLint and Prettier. To check your code for style errors, run yarn lint from project root. To auto-fix the linter errors run yarn lint --fix.
The backend web API is located in seeus-dev/seeus-backend, and the dispatcher desktop app in seeus-dev/seeus-dispatcher.
When making changes to the app, you should run a local instance of the API.
mkdir seeus
git clone git@github.com:seeus-dev/seeus-app.git
git clone git@github.com:seeus-dev/seeus-backend.git
git clone git@github.com:seeus-dev/seeus-dispatcher.git