'Fitbit Friends' is a tool to compare your activity with that of your friends. The data is sourced from the Fitbit API.
The system is built as a Vue.js (Nuxt with TypeScript) frontend, a serverless API (also TypeScript), and AWS DynamoDB (provisioned with Terraform) for storage.
You'll need:
To run the project locally:
- Run
yarn
to install dependencies. - In another terminal, run
yarn devdb
to start a local DynamoDB instance in a Docker container (and leave it running). - Run
yarn devdb-tables
to create DynamoDB tables in the local (Docker) instance. - Run
now dev
, which will start the Nuxt dev server as well as set up the API handlers.
Unit tests are written in TypeScript with Jest. Run all the tests with yarn test
.
Eslint is configured for JavaScript, TypeScript, and Vue files. Check the linting with yarn lint
(this will also be checked by a CI action).
Github Actions are configured for verifying linting, running unit tests, and provisioning infrastructure with Terraform.
Zeit Now will automatically deploy every commit (production for master, preview environment for all other branches).