GitHub Organization navigator with auto-suggestions, sorting, and commit browsing
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
public
src
.gitignore
README.md
package.json
yarn.lock

README.md

GitHub Browser

This project is a simple GitHub repository and commit browser for a given organization. The stack was initialized using create-react-app. Tests are written using jest and enzyme. The UI framework is the fantastic material-ui. Lastly, axios is implemented for communicating with the GitHub API.

Demo

screen recording 2018-08-20 at 10 28 am

Limitations

In an effort to limit the scope, this project uses local React state and the test coverage is fairly trivial. In a production application, test coverage would be much more aggressive and API interactions would be properly mocked. redux or mobx would likely be used for state management.

During development, a GitHub OAuth application was created for authenticated calls. This substantially raised the rate limit and sped up development, but it isn't advisable to commit the Client Secret. Anyway, please be aware of rate limits because they are aggressive.

Features include:

  • Auto-suggest during organization search
  • A localStorage implementation of the chosen organization
  • Sorting by Popularity (Forks), Stars, and Open Issues
  • A fancy panel for browsing commits :)

Note: Organization details and repos are intentionally missing from localStorage. Arguably, the details could be saved but the repos and commits are both fairly dynamic.

Setup

brew install yarn
yarn install

Running Development

yarn start

Running Tests

yarn test