Building a Github Dashboard

Currently I’m working on and helping to maintain a project called Github Dashboard. Last week I wrote about helping to start the project, while this week will be about how I helped establish a base for it.

Creating things To Do

To make the project move forward a list of issues needed to be determined and added to the repo. As I worked on ones myself I would discover new things to add, which helped progress things naturally.

It was great when others would take up issues and begin to add to the project themselves. Not only was it good to have additional help, but nice to know that others were interested in contributing to the project.

Code Reviews

Before merging PRs, I‘d need to do a code review of their work and comment on anything that might need to be added/was missing. There hasn’t been that much activity yet, but of the ones I’ve conducted so far (here and here) they’ve been good learning experiences.

Interacting with the Github API

An important part in bootstrapping this project was creating a means of interfacing with the Github API. I wanted to get started on this as early as possible to make it easier for others to add to contribute.

Taking inspiration from a project called voice-web, I decided to create a new file dedicated to interacting with the API. I felt that doing so would maintain a separation of concerns and help keep the app clean.

I was able to use the octokit REST api client to make interactions more straight-forward and simple. I expect that the file will get more complicated and there will need to be a means of interacting with the API beyond octokit, but using it helped create a baseline for the project.

Final thoughts

So far I’m enjoying being a maintainer on this project, mostly because it’s helping me to see things from their perspective. As I contribute to other projects it will help me have a more rounded understanding of where they may be coming from and the kind of work required to maintain a project.