Personal dashboard and metrics collector
collector
- an application that parses data from a number of APIs, aggregates it into monthly metrics, and stores the results in the store
reporter
- a http service that reads data from store
, generates chart.js charts, and serves a dashboard
store
- data is stored in BoltDB using Storm
This project is intended to be deployed via Docker with two containers (collector
and reporter
) and a shared volume for the backing database. The the collector
application should be a scheduled job such as a CronJob in Kubernetes.
Populate a configuration yaml file (example) with the credentials required for the metrics you are interested in collecting.
- Goodreads - create a Developer Key here
- Fitbit - register your application here
- Github - create a Personal Token here
Statboard requires two environment variables to be set:
STATBOARD_CONFIGFILEPATH
- path to your yaml configuration file described aboveSTATBOARD_DBFILEPATH
- path to storeBoltDB
database file