Data collection web service for receiving and storing pulse oximetry from our CoVital mobile and web app partner projects.
.env file filled with the credencials of you mongoDB
NODE_ENV=development
DBUSER=covital
DBPASSWORD=my_db_password
DBADDRESS=127.0.0.1
DBPORT=27017
DBNAME=covital
DBAUTHSOURCE=covital
MongoDB must be running
./devops/mongo-db-setup.sh
to create covital db automatically (mongo
must be installed)npm install
npm start
(First test user will be added automatically through migration)
Open http://localhost:9000/api-docs in a browser to confirm your install is working.
We have a github action defined in .github/workflows/ci.yml
that will run a basic node lint/test/build pipeline. You can test locally without waiting for CI by running the following:
npm run ci-build
Install Docker Compose if you haven't already.
NOTE: The Pulse web service will fail to connect to Mongo until you run the mongo-db-setup.sh
script. Once you do, the service will automatically connect to mongo.
docker build -t covital/ingress .
docker-compose -f devops/docker/compose/docker-compose.yml up -d --no-recreate
cd devops && ./mongo-db-setup.sh
docker-compose -f devops/docker/compose/docker-compose.yml up -d --no-recreate
docker-compose -f devops/docker/compose/docker-compose.yml ps
curl -v -XGET 'http://localhost:3000/diagnoses'
If you don't have Postman you can download it here. The postman collection is stored in this repo under docs/postman/pulse-collection.json
Integrators: See https://guarded-crag-28391.herokuapp.com/api-docs/ for interactive API playground with documentation.
Backend developers: see the dev sandbox server at https://pulseox-sandbox.herokuapp.com
*ALL master
builds on github automatically deploy to the sandbox. @dpritchett or @haggy can click a button to promote sandbox releases to staging. Let us know if this flow needs adjustment!
Contact @dpritchett to be added to the CoVital Heroku team for managing our deployments.
See the Releases page in the repo for pregenerated client libraries for javascript, dart, and ajva.
master
commitClone this repo and run make
to generate client bindings for multiple languages.
There are some endpoints (such as generating signed S3 upload requests) that need AWS access in order to work. You'll need credentials setup in one of the places detailed here.
See the GitHub issues for this project.
master
(all contacts in the #project-monitoring-o2 slack room on HelpfulEngineering Slack)