Coder Social home page Coder Social logo

githubteamreviewer's Introduction

Github Team Reviewer Build Status

A monitoring tool that allows you to quickly view all Github pull requests of your teams and their statuses.

View the demo site for a real example.

Github Team Reviewer

Installation

Clone the project

$ git clone https://github.com/M6Web/GithubTeamReviewer.git
$ cd GithubTeamReviewer

Install dependencies

$ npm install -g bower gulp
$ npm install
$ bower install

Configuration

Please configure a new config/config.json file from config/config.json.dist.

Options :

  • refreshInterval : time between 2 dashboard updates (be careful with low interval because you can reach API rate limit quickly),
  • teams : list of teams, keys are teams names and you can define these properties for each :
    • members : an array of Github usernames (optional, default get all members),
    • projects : an array of Github repository's names (optional, default get all repositories),
    • org : an array of Github organizations,
    • apiUrl : url of your Github API (optional, default is https://api.github.com),
    • descendingOrder : allow to change ordering of pull requests (optional, default is true).
    • labels : display labels of pull requests (optional, default is false).
    • milestones : display milestones of pull requests (optional, default is false).
    • reviews : display reviews of pull requests, and allow to highlight reviews of a particular user (optional, default is false).
    • token : authorization token for API calls (optional, it can allow access to more repos and increase API rate limit) NB: if a token is set, OAuth will be ignored for the team
    • oauthAppClientId : clientId of the OAuth app the team depends on (optional)
  • githubOAuth : OAuth config (optional)
    • gatekeeperBaseUrl : url to Gatekeeper (see OAuth section)
    • apps : list of the apps you use to auth
      • url : base url of GitHub (should be https://github.com or the base url of your GitHub enterprise)
      • clientId : clientId of the app

Run the server

After configuration, you have to build the code and launch the server.

$ gulp serve:dist

It will automatically open the dashboard in your browser.

OAuth

To use GTR with GitHub OAuth you must :

  • Register a new application on GitHub (in Settings > Applications)
  • Install Gatekeeper and launch it
  • Set your "gatekeeperBaseUrl" and type in your app data (clientId and GitHub URL) in config/config.json (example in config.json.dist)
  • Don't forget to link the OAuth app to the teams thanks to the oauthAppClientId property

Then, you should see the Auth button in the upper-right corner of the app !

Use

Use directly the page path in order to select a team.

http://gtr-url/index.html#/myTeam

Colors show the PR statuses :

  • black when there is no test
  • yellow when the tests are running
  • red when tests fail
  • green when tests are successful

Installation for dev

Clone and init the project

$ git clone https://github.com/M6Web/GithubTeamReviewer.git

Install Vagrant and configure Vagrantfile :

$ cp Vagrantfile.dist Vagrantfile

Note : configure your own Vagrantfile and provisionning if necessary.

$ vagrant up
$ vagrant provision # because of npm issue on the first vagrant up
$ vagrant ssh
$ cd /vagrant

Install dependencies

$ sudo npm install --no-bin-links
$ bower install

Configure your application via config/config.json.

Run the server

$ gulp serve

You can now access the application at http://localhost:9000.

Tests

Test the unbuilt code :

$ gulp test

Test the build :

$ gulp test:dist

Credits

Developed by the Cytron Team of M6 Web.

License

Github Team Reviewer is licensed under the MIT license.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.