Colonist.io

Colonist.io is an online board game that is similar to Settlers of Catan, with over 700,000 monthly active users in 2020. I contributed two popular features and fixed three critical bugs.

Note: Search for macolby14 to see my contributions in the Patch Notes

Tech Used

TypeScript Icon
TypeScript
Git Icon
Git
Docker Icon
Docker
Node.js Icon
Node.js
Mocha Icon
Mocha
Game Map Screenshot

Project Motivation

After playing on colonist.io with friends for several months at the start of the COVID-19 pandemic, I started contributing in order to add features I wanted and to fix bugs that I encountered. Features I contributed to the production code included re-working the lobby display so you can see key information about each game before joining a room, creating a new map, and fixing the rematch button.

Create Room Name from Setting Screenshot
Previously Kicked Screenshot

Technical Challenges

Git and Collaboration

This was the first real project I was working on with others, so I learned a lot about Git, collaboration, and code reviews. I used Github to assign myself issues, to submit pull requests, and to receive feedback. Although I had used Git in the past for personal projects, things like branches, rebasing, and merging made more sense after having practical experience.

Docker

I learned about Docker images, containers, volumes, and the different types of files and commands to use Docker. Using Docker made it easy to develop across different environments and spin up all the different containers that were required to run the site in local development.

Testing

This was my first real experience with automated testing; tests were created with Mocha.js. I created tests for all of the pull requests I submitted and utilized existing tests to ensure I wasn’t breaking any of the existing code base.

Summary

I learned a lot working with the professional colonist.io team (they are a small business). If anyone is getting into coding, the Colonist.io team is often looking for talented fan contributors or new employees. The site is also great for spending time if you’re a fan of Settlers of Catan!