In Hack Reactor week 6 (the final week of our junior life), we started working on our MVP project. It’s our first time in Hack Reactor to work on a project solo. Within 36 hours, we needed to come up with an idea, write our product from scratch, and prepare a demo.
My MVP project is called Github Saga, which is a web service that allows you to enter your Github handle and find out your contribution data among your followers and following.
At first I thought it wouldn’t be difficult to accomplish this since there is a Github API. However, I ran into several issues:
- Github API access limit: Github API only allows 60 visits per hour per IP. During our MVP time, several of us were using Github API so the limit went out fast and we got our access denied error from Github.
Solution: Register your app in your Github account and get an oauth token. With the registered oauth, your limit would increase to 5000 visits/hour.
- Github contribution not showing through API call: After fixing API call limit, another issue was that Github doesn’t return people’s contribution data back in the object. At first I thought it was hidden in a deeper layer of the response object, but after hours (my precious hours!!) of researching and debugging, I realized that Github API doesn’t return contribution data. Solution: I tried scraping the data from the Github page. I used “jsdom“, which can be thought of as a server side jQuery. By using jsdom, I didn’t need to store all the html source code, but only the contribution part.
Overall, it was a very good experience. I will need to find some time to refactor my code and make it better, but for now, here you have it, the Github Saga.