Demandez ou donnez du feedback à vos collègues !
-
Open your IDE in
./serverdirectory -
Create a file
.envwith the following environment variables:
PORT="3000"
CLIENT_URL="http://localhost:4200"
FIREBASE_PROJECT_ID="<SECRET_VALUE>"
FIREBASE_PRIVATE_KEY="<SECRET_VALUE>"
FIREBASE_CLIENT_EMAIL="<SECRET_VALUE>"
MAILGUN_USERNAME="<SECRET_VALUE>"
MAILGUN_KEY="<SECRET_VALUE>"- Run the following commands:
npm install
npm run start:dev-
Open your IDE in
./clientdirectory -
Run the following commands:
npm install
npm startThis repository includes a fully integrated CI/CD script that works with CircleCI (see .circleci/config.yml).
A more comprehensive documentation on pre-requisites and mandatory environment variables can be found there
The CI is configured to check that:
- ✅
npm ciworks properly - ✅ tests are all passing
- ✅ linting has been applied
- ✅ the server and clients build properly
On pushes to dev branch (or alternately tagging a revision staging-X.Y.Z where X, Y, and Z are integers), the full stack is then deployed to staging:
- backend on Google Cloud Run: Staging Backend Health Check
- frontend on Firebase hosting: Staging app
On creating a release on Github and tagging a revision vX.Y.Z where X, Y, and Z are integers), the full stack is then deployed to production:
- backend on Google Cloud Run: Production Backend Health Check
- frontend on Firebase hosting: Production app