TeamTrack is an open-source mobile application for outdoor events with a need to track the distance covered by their members. Users can adhere to groups and see in real-time their distance and that of their group and of the event.
TeamTrack is a fullstack javascript application based upon the following stack:
| Concern | Solution |
|---|---|
| Server | Node 9.5 |
| Server Framework | Express |
| Database | RethinkDB |
| Data Transport | GraphQL |
| Client State | Redux |
| Client Data Cache | Apollo |
| Mobile Framework | React Native |
TeamTrack is coded using ECMAscript ES6/7 (including async/await). Transpilation is provided by babel.
TeamTrack's backend is fully dockerized, from dev to prod.
You will need to install yarn which can be installed by running npm install -g yarn.
TeamTrack requires Node.js >=8.5.0 (I'm using 8.5.0 in development). and it also depends on RethinkDB. However those dependencies are hidden via docker.
$ git clone https://github.com/jo-va/team-track.git
$ cd team-track$ yarn deploy:devMake sure you have an emulator or a connected device.
$ cd mobile
$ yarn
$ react-native upgrade
$ react-native linkSet android:windowSoftInputMode="adjustPan" in AndroidManifest.xml.
$ react-native run-androidTo generate the release APK:
$ cd android && ./gradlew assembleRelease$ react-native run-iosDuring development, the use of react-native-debugger is suggested.