Devpost Submission
Inspiration
As software developers, we have often started new projects and then we forgot about it. This mostly happens because we don't track what items we are working on and what the deadline is. We might track a single repository and all the issues on it but what if we had one place which would track all of our issues, irrespective of where it is on GitHub. Presenting to you, GitDash!

What it does
The app has multiple features to make the life of a developer easier.
- You can get all the repos, issues and pull requests you are currently assigned to on GitHub.
- You can favourite the repositories that you are working on currently to get their information first on the dashboard
- Redirect to all issues, pull requests and repositories from GitDash to GitHub so you're always connected to what is important.
This is what the user dashboard looks like.

How we built it
Components
- Backend:
- We had to get a lot of data from Github for each user using their OAuth tokens. We built multiple API endpoints using Octokit Core JS to collect data from the Github REST APIs.
- We made an additional API for the favourites feature using .NET Core and hosted it on Linode using Nginx as a reverse proxy
- Frontend: We used Next.js, which is a framework based on React, to ensure the best user experience as well as the best developer experience. We also used Chakra UI for the styling of the website.
Tech Stack
- Next.Js
- Chakra.ui
- Netlify
- Github API
- Octokit Core
Sponsor Technologies
- Linode: The backend api which is used to provide data storage and crud for favourites is hosted on Linode usng Ubuntu 20.04 and nginx as our web server.
CockroachDB: The favourites feature is implemented using cockroachDB. We save the userID and the repository name and owner details to display the favourite repository of all our users on a separate page.
.tech Domain: Our website is hosted on https://gitdash.tech
Challenges we ran into
Technical Challenges
We ran into some issues with the following technologies
- Vercel Deployment
- Linode
- Cockroachdb
Non-Technical Challenges
This journey was full of challenges:
- Picking the tech stack: We had to choose something which everyone was comfortable with but we couldn't find anything so one of our team members had to learn the stack from scratch before making the contributions.
- Time Difference - Between the three of us, we had seven hours of time gap which proved to be an issue, especially when someone had to get their PRs merged.
- Other commitments: All of us had college or some other form of commitments to tackle which got in the way of our productivity.
Accomplishments that we're proud of
- Learning Next.js and making use of as many features as possible.
- Following proper Git Flow while making contributions to the project instead of naively pushing changes to the main branch.
- Remotely collaborating with team mates all over the globe.
- Coming up with a novel idea and executing it in a specified time frame and also thinking about areas of improvement.
What we learned
- We learnt how to work well in a global team and using Git properly.
- Working remotely means that people can get out of touch of what others are working on, hence, we overcommunicate to make sure everyone is on the same page.
- We also learnt about each others cultures and how we are different and similar and that has been a great experience.
- We learnt about the sponsor technologies and played around with them, finally integrating three of those.
- We learnt Next.js and creating APIs with Next.js API routes.
In all of the above, we found that learning by doing is the most effective method of learning. :smile:
What's next for Pod 3.1.3 - GitDash
For the next steps, we would like to:
- Integrate Twilio to send notifications reminding you to stay productuve :)
- Integrating with calendar and setting deadlines for oneself
- User Testing some of the features
- Building a more robust backend
Disclaimer: The site might take 24hrs to get deployed.
Built With
- chakra-ui
- cockroachdb
- github-api
- linode
- next.js
- octokit
Log in or sign up for Devpost to join the conversation.