A mobile app to assist & build on MSF's ICCM Diagnosis. It implements the ICCM Diagnosis algorithm and features to assist with the diagnosis (e.g. with breath counting).
- git
- node.js
- yarn or npm
clone the repo using wither
$ git clone https://github.com/RoryDH/iccm-diagnosis.git
$ git clone git@github.com:RoryDH/iccm-diagnosis.git
in the cloned repository install the packages by running either
$ yarn install
$ npm install
download the EXPO app on your mobile device
run either
$ yarn start
$ npm start
$ expo start
Scann the QR-code with your mobile device and your ready to roll
you can deploy using expo
$ expo build:android
$ expo build:ios
The ipa/apk files can then be retreived from https://expo.io/builds
$ yarn test
##Contributing
- Create and checkout a branch
git checkout -b name/feature
- Work on new features, commit your changes
git add ...
,git commit -am "Added useful button"
, etc. - Push your branch
git push
and create a pull request on GitHub - Once merged on GitHub,
git checkout master
andgit pull
.
###Getting the latest master changes
If you've started working on your branch, but in the meantime someone adds new stuff to master and you want/need to get the newest master code on your branch:
-
Have no uncommitted changes. (commit or stash your current changes on your branch)
-
Change to master and get the latest commits
git checkout master
git pull
-
Switch back to your branch and rebase
git checkout name/mybranch
git rebase master
-
If you pushed your branch before a rebase, next time you push you'll need to run
git push -f
as the commits now will have new IDs.
When you create a branch off of master, it's based off the last commit on master at that time. Rebasing updates the base of your branch to be the latest commit on master so that your changes are now laid on top of the newest version (while still on your separate branch). Rebasing is preferable to running git merge. Regardless, both may result in merge conflicts which it will list in the terminal.
Before rebase (F and G were added to master after you started your feature)
A---B---C name/feature
/
D---E---F---G master
After rebase (Your branch now starts at G, continue working with the latest and greatest!)
A'--B'--C' name/feature
/
D---E---F---G master