RunSignUp-Team / RunSignup-Mobile-Timing-App

Apache License 2.0
3 stars 0 forks source link

RaceDay Mobile Timing

About

This app allows users to record race results on their mobile devices. Finish Line Mode allows users to record finish times (and bib numbers, optionally). Chute Mode allows users to record bib numbers. The data is stored locally on the device, and pushed to RunSignup when recording is finished (if the user has chosen the Score & Publish Results App Flow). One user can record times in Finish Line Mode, and multiple users can record bib numbers in Chute Mode.

App Flows

  1. Score & Publish Results - Results are stored locally. Participant data is pulled from RunSignup, allowing Grid View in Finish Line Mode (see below). When the user has finished recording Finish Times & Bib Numbers, results are synced to RunSignup. Results can also be exported by the user.
  2. Backup Timer - Results are stored locally. Participant data is pulled from RunSignup, allowing Grid View in Finish Line Mode (see below). Results are never pushed up to RunSignup, but can be exported by the user.
  3. Score Offline - Results are stored locally. This App Flow can be used without an Internet Connection. Results are never pushed up to RunSignup, but can be exported by the user. Results can also be assigned to an Online Event (in the Score & Publish Results App Flow) when an Internet Connection is established.

Running The Project

  1. Clone this project
  2. Download nodeJS if you have not already (https://nodejs.org/en/)
  3. NOTE: We have left a placeholder NEED_APP_ID throughout the code. You will need to decide the Apple and Android APP_ID for your usage of this app (e.g. com.company.appname) and update the code for that setting. Search and replace NEED_APP_ID with your app id. In addition the Android Java namespaces and folder structure (packages) will need to be adjusted for that new com.company.appname pathing.
  4. Run npm install in Terminal
  5. Run npm install expo-cli in Terminal
  6. Follow the instructions at these links to run an iOS or Android emulator on your computer.
  7. Run expo run:android or expo run:ios in Terminal (do not use the Expo Go app)

Images

App Flows

Finish Line Mode - List View

Finish Line Mode - Grid View

Chute Mode - List View

Chute Mode - Scan View

Results Mode

MIT Licenses