ContribKanban.com: What's next

Published on Monday 23, October 2017

Back in 2015, I created ContribKanban.com as a tool to experiment with AngularJS and also have a better tool to identify issues to sprint on at my previous employer before Commerce Guys. At the Global Sprint Weekend in Chicago, I received a lot of feedback from YesCT and also ended up open sourcing the project. That first weekend made me see it was more useful than just being a side project.

I was pretty excited to hear it was used by the Drupal 8 Media Initiative (not sure if they actively are) and other projects. But, then it started to become a burden. It is a MEAN stack application and I'm not an expert with MongoDB or using pm2 to manage a node server. Basically, it is at the point where I don't want to touch it, lest it breaks and I burn an afternoon on it.

Next Moves

Instead of letting the project go into retirement, I have decided to revamp it. I'm rebuilding it on top of Drupal 8 and a SQLite database with a light front end (jQuery and Drupal.* functions.)

Moving to Drupal 8 allows me to work with something I know best, and also makes data management much easier. Currently, projects are stored in a MongoDB document and then their boards can be overridden via some JSON in the repository. This allowed projects to have boards limited to a specific tag or a project release parent issue. But it involved some level of effort on my end. It also wasn't super easy adding core-specific boards.

Here's an admin screen for creating and editing a board

The end result is something like this https://nextgen.contribkanban.com/board/Migrationsystem

As you can see by that URL, a preview is available at https://nextgen.contribkanban.com/. Boards and sprints can be added like they used to be - by entering a project's machine name or an issue tag. There are some features missing and small bugs to work out. But this should make it much easier to create custom boards with any kind of list needed.

The idea is that there are the board level configurations and then list level overrides.

I'm excited to move it to Drupal 8 because I hope it provides example code for some others. The code can be found at https://github.com/mglaman/contribkanban.com/tree/nextgen. The code is hosted on GitHub and uses CircleCI to deploy to my DigitalOcean droplet.

Want to support the project?

This is a side project and comes second to my work and duties as a maintainer of Drupal Commerce. There is a Gratipay project page and I have a Patreon account.

I'd like to give a shout out to Joris Vercammen who found my Patreon page and has pledged enough to fund my monthly hosting cost, and kind of helped rekindle the project.