Motivation
We all love the MLH Fellowship and as MLH Fellows from every track (explorer, open source and externship), we spend most of our time collaborating through Discord & GitHub. However, with so many fellows contributing across multiple repositories, it becomes difficult for mentors to track the progress. That's where GitHub Projects come into play, allowing MLH Fellows to track, collaborate and update their contributions at one place. Currently, GitHub Projects does not have any notification system, so it is easy to overlook:
- For fellows to know if a new issue is added by a mentor.
- For mentors to keep up-to date with fellows progress, especially if multiple fellows are contributing to a single project.
- For maintainers to track which issues are being worked on.
GitHub Project Notifier is a Discord 🤖 aiming to fill the gap by bridging the GitHub Projects with Discord Project channels, so all the fellows, mentors & maintainers get their GitHub Project card updates right on Discord!
Category
GitHub Project Notifier is submitted for categories:
- Remote Work/Tooling: GitHub Project Notifier can be used as a project management tool to track progress from your GitHub Projects right on Discord Project channels.
- Navigating the Fellowship: A major activity in MLH Fellowship is tackling issues and Open Source Fellows (AKA Issue Hunters 🎯) do an awesome job at closing them! GitHub Project Notifier lets the fellows know immediately of their next delicious prey 😋
What it does
The complete documentation is available at README.md. A list of documented commands are:
- list: Lists all subscribed GitHub Project boards
!github-project list
- sub: Subscribe to a GitHub Project board
!github-project sub https://github.com/[owner]/[repo]/projects/[0-9]+
- unsub: Unsubscribe from a GitHub Project board
!github-project unsub https://github.com/[owner]/[repo]/projects/[0-9]+
How we built it
We started off by a zoom meeting where we explored the somewhat vague idea into concrete functional and non-functional requirements and make sure all the team members were on the same page.
Then, we split off the work based on our interests and skill set. At its core, GitHub Project Notifier acts as a bridge between two APIs, GitHub API and Discord API, built with NodeJS. To easily integrate our bot with repositories and organizations, we built a companion GitHub App. We rigorously applied best open source practices mentioned on the fellow handbook and more:
- We use GitHub Flow, so all code changes happen through pull requests.
- All our commit messages and pull request titles follow Conventional Commits.
A complete documentation of our workflow is available at CONTRIBUTING.md.
Accomplishments that we're proud of
Usually hackathon projects are very taxing and involve somewhat late pair programming sessions. This was the first hackathon project where we fully utilized the GitHub Flow. Fortunately, our expertise and issues were not coupled at all, that is why we were able to work asynchronously.
We are very proud of how we were able to work together like an experienced team in such a short period of time. As one of our team members always says:
Talent wins games, but teamwork wins championships hackathons.
What we learned
We explored:
- GitHub API & GitHub Apps
- Discord API & Discord Bots
- Google Cloud Platform
- GitHub Flow & Conventional Commit
- Asynchronous workflow
The most successful achievement we had: we completed what we had in mind for the hackathon which happens quite rarely in a hackathon project.
What's next for GitHub Project Notifier
We already have a roadmap outlined for the GitHub Project Notifier where we will support GitHub Projects under GitHub Organizations. A documented issue is available here.

Log in or sign up for Devpost to join the conversation.