Team statistics from GitHub into your shell.
To know how to build/configure/use each module, please click on the links to access the documentation.
Base modules allow for behaviour decomposition, each taking care of one specific functionality.
core
contains all the models and main interfaces shared across the projectdb-layer
implements the persistence layer on a MySQL databasenetwork
contains all the network (HTTP) components used to query APIgithub
contains the components to query the Github API and persist the retrieved elements on the databasefloat
contains all the components needed to query the Float APIweb-service
contains the endpoint handlers for Amazon AWS Gateway written as Lambdasgithub-hooks-web-service
contains the the components used to receive and parse Github webhook notificationssheets
makes it easy to get data from Google Sheets documents
Batch modules allow the historical retrieval of data from Github and persistence on the database, using base modules.
batch
defines a shared recursive batch mechanism that can be implemented with different cloud providersbatch-aws
contains a service client layer for the needed Amazon AWS services (CloudWatch Events, SQS, Lambda)batch-aws-lambda
contains the Amazon AWS Lambda function that will recurse, using SQS, to fetch and store Github data
User interfaces allow to execute all the processes implemented in the project.
reports-batch
contains a CLI to query the Github APIs from your machine or from AWS, and store retrieved data in the remote/RDS databasereports-stats
contains a CLI to query for statistics on data available in the remote/RDS databasereports-stats-google-sheets
contains a Google Apps Script project to query for statistics on data available in the remote/RDS database and output them in a Google Spreadsheetweb-dashboard
contains an Angular 2 Web app with dashboards that use organisation data retrieved and manipulated by other modules