BloodConnect is a platform aiming to connect blood donors and donees.
BloodConnect is a project for NUS Orbital 2020 started by team Bloodwork. This project is being proposed for the highest achievement level, Artemis.
- Clone the repository by invoking
$ git clone https://github.com/bloodwork-nus/bloodconnect.git
. - BloodConnect uses Yarn, so install all the dependencies by invoking
$ yarn install
. - BloodConnect is powered by Firebase, Google Maps SDK for Android, Google Places API, and Google Geocoding API. So, create Firebase and Google API projects, obtain your API keys, and create a
.env
file in the root project directory and structure it as follows:
API_KEY=<Your Firebase public API key>
PROJECT_ID=<Your Firebase project ID>
MAPS_API_KEY=<Your Google API key>
This format is tentative and will always be updated if BloodConnect's code base changes. Remember to enable Realtime Database and Authentication on your Firebase console and Maps SDK for Android, Places API, and Geocoding API on your Google API console.
Kindly note that the API key in
android.package.config.googleMaps.apiKey
found inapp.json
is just a placeholder and is no longer functional.
- If you want to start the development environment, simply invoke
$ yarn start
. Ensure that you haveexpo-cli
installed globally. If not, invokenpm i -g expo-cli
oryarn global add expo-cli
. An instance of Metro Bundler should start. You can use an iOS/Android device or simulators. Expo Client will automatically be installed by Expo CLI. - If you want to build, install
turtle-cli
on a Linux/Unix-based machine (e.g. Linux, macOS, or Windows Subsystem for Linux). Simply invokenpm i -g turtle-cli
. Do not use Yarn. - If you are building for Android, remember to install JDK 8. Then, follow the remaining two steps found here (links to Phillmont's build tool).
- If you are building for iOS, you need to build on macOS. After installing Turtle CLI, invoke
$ turtle setup:ios --sdk-version 37.0.3
to setup your machine for building. Then, follow the remaining steps found here (links to Expo's official documentation).
BloodConnect is going to upgrade to Expo SDK 38 and React Native 0.62 soon!