Coding Phase I — A focus on prioritization

GitMate

As the coding period commenced on 7 June, I began working on the first week’s milestones (we have neatly defined the milestones week-wise here:)

For the 1st week, we had decided to focus on IGitt, the underlying python library which powers the Git interaction of GitMate with the hosting platforms GitHub and GitLab. It’s pretty cool and extremely simple to use. IGitt had not been upgraded in the last 2 years, so firstly, we decided to upgrade its dependencies.

While doing this, I faced some issues since a few dependencies did not support Python3.5 anymore. I discussed this with my mentor, and we decided that we could go ahead with upgrading dependencies to the latest versions while safely dropping IGitt support for Python3.5.

Next up, we decided to deploy IGitt docs using Netlify. I was glad I got to work on this since I’ve had very little exposure to the deployment process in my journey in web development. I was tasked with creating a `netlify.toml` file, and with help from my mentor, I was able to iron out the issues I was facing.

Our primary goal for this coding period was to get GitMate functional as soon as possible. So, to that end, I began working on the front end of the webapp, which has been written in Angular. Before contributing to coala, I only had experience with React, and I had been using React for all my personal projects (I had begun exploring Angular during the contribution period and quickly picked up the basics). I solved a couple of issues here related to the URL routing and the UI of the home page.

After this, I moved on to improving the backend of GitMate, which has been written in Python/Django. I started with upgrading all the dependencies as they were outdated by ~3 years.

GitMate was still not functional and going forward, we decided to make this our top priority as we knew that once we activate it, we’re going to be able to identify a lot more issues and possible improvements after getting feedback from the community. I’m going to be sharing what I did in the subsequent weeks in an upcoming blog :)