git clone https://github.com/CheckMateSG/checkMate.git
cd checkMate
npm install -g firebase-tools
npm run postinstall
- run
firebase login --no-localhost
then login with your betterSG email - set up tunnel to localhost. Can contact BW for cloudflare tunnel
- Open 3 shells from in root directory
- [Shell 1]
make firebase
- [Shell 2]
make functions
[hot reload for functions] - [Shell 3]
make checkers-app
[hot reload for webapp] - Can start on development
In the event the Makefile doesn't work,
- Open 3 shells from in root directory
- [Shell 1]
cd functions
- [Shell 1]
npm run build:watch
[hot reload for functions] - [Shell 2]
cd checkers-app
[hot reload for webapp] - [Shell 2]
npm run build:watch
- [Shell 3]
npm run serve
- Can start on development
- Firebase Console - https://console.firebase.google.com/, login with your bettersg email. Go here to manage the product resources and to change the production DB (later on, for a start we can just use the emulator)
- Adding subcollections - https://stackoverflow.com/questions/47514419/how-to-add-subcollection-to-a-document-in-firebase-cloud-firestore
- Getting started with firestore and firebase (basically I've adapted that for this repo) https://firebase.google.com/docs/functions/get-started
- WhatsApp send message API documentation - https://developers.facebook.com/docs/whatsapp/cloud-api/guides/send-messages
- WhatsApp webhook object documentation - https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks/components
- Telegram Bot API documentation - https://core.telegram.org/bots/api