Skip to content

clockclog/github-profile-summary-api

 
 

Repository files navigation

GitHub Profile Summary Backend

Powered by https://nodejs.org/, http://expressjs.com/, and https://github.com/hapijs/joi.

The web app is hosted at https://githubprofilesummary.com on Netlify.

This API is hosted on Google App Engine.

Frontend React app for this project is located here: https://github.com/theblindprophet/github-profile-summary.

Install

git clone https://github.com/TheWillG/github-profile-summary-api.git

cd github-profile-summary-api

npm install

Run

npm run start

Testing

npm run test

Tests are located at __tests__

Environment

Name Description Example
PORT Port the app is run on. 3000
LOGGER_LEVEL Logger level configuration used by log4js package info
GITHUB_USERACCESS_TOKEN Access token used to read from the Github API 123456abcdef
MAILGUN_API_KEY Mailgun API Key required to send mail 123456abcdef
MAILGUN_DOMAIN Mailgun Domain name required to send mail subdomain.domain.com

GITHUB_USERACCESS_TOKEN can be obtained here.

The environment variables are encrypted from env to env.enc.

CI/CD

We use Google Cloud Build and Google App Engine for continuous integration and deployment.

File Description
app.yaml Configurations for deployment on Google App Engine
cloudbuild.yaml Configurations for integration testing, non-master branch, on Google Cloud Build
cloudbuild.prod.yaml Configurations for integration testing, master branch, on Google Cloud Build

These files should be NOT edited by anyone except the original maintainers.

Our Google App Engine and Google Cloud Project have also been configured to help with the CI/CD pipeline.

Contributing

We are always willing to accept contributions to this project.

Contributors

Will Garcia (LinkedIn)

Jamie Gross (LinkedIn)

About

Github Profile Summary API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.9%
  • Shell 1.1%