npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

github-status-api-gui

v0.7.2

Published

GUI tool to interact with GitHub Status API

Downloads

6

Readme

GitHub Status API GUI

The GitHub Status API GUI is a React/Redux client-side web application which can be used to view and create GitHub commit statuses in any GitHub repository you have access to. The application uses OAuth to allow users to authenticate to GitHub using their own GitHub usernames and passwords.

Prerequisites

  • Node.js version 8.x see note
  • Npm version 5.x or greater (comes with Node.js version 8.x)

Using OAuth with GitHub

In order for your instance of the GitHub Status API GUI application to authenticate to GitHub using OAuth, you must first register a new OAuth application for your instance. For more information, see GitHub's OAuth documentation for developers.

Gatekeeper

In order for OAuth authentication with GitHub to work, you must configure and deploy an instance of the open-source Gatekeeper application to a server. This is due to a security measure GitHub has put in place in it's OAuth authentication API to prevent client-side applications from directly authenticating with GitHub. This restriction ensures that application developers do not inadvertantly disclose their application's GitHub client secret to users by including it in client-side code.

Deploying Gatekeeper

You can easily deploy an instance of Gatekeeper directly to Heroku or Azure by clicking the appropriate button in Gatekeeper's README.md file.

Alternativly, you can clone the Gatekeeper repository and build/deploy Gatekeeper to any web server manually.

Make sure you follow the instructions for setting up Gatekeeper in Gatekeeper's README.md file, including setting the client secret you obtained from GitHub when registering your OAuth application. See Gatekeeper's README.md for more details.

Configuring GitHub Status API GUI

See Configuring The Application.

Known Bugs/Limitations

  • Compatibility with Node version 6.x

    • GitHub Status API GUI version 0.7.0 and greater will not work out of the box with Node version 6.x and earlier. This is because Node version 6.x supported the --harmony-proxies flag, while Node version 7.x and later changed it to --harmony.

    • In order to make this project work with Node version 6.x and earlier, change the following line in the scripts section of package.json:

      "test": "node --harmony node_modules/jest/bin/jest",

      to:

      "test": "node --harmony_proxies node_modules/jest/bin/jest",

      NOTE: You may also have to adjust the engines.node property in package.json.

  • The commits list page is the only page which currently supports pagination of data returned from GitHub API.

    • For all other views, you can only see the first page of records returned from the GitHub API. By default, the maximum number of records per page of data is 30 (see GitHub issue #45)

    • Full support for pagination of all data views in the GitHub Status API GUI application will be added in a future release.

Tools Used In Development

This development enviornment for this project was created using Cory House's react-slingshot tool, which is available under the MIT License.

License

This project is licensed under the MIT License. See LICENSE file for details.

Copyright

Copyright © 2017 Michael Hadjiosif