Colour My Change

Programming

Colour My Change is a simple web app for generating printable weight loss (or gain) progress charts.

About The Project

Colour My Change was inspired by seeing weight loss progress diagrams that you create and stick on your wall. For every pound or kg lost (or gained), you fill in a bubble until you reach your goal. Tired of having to create a new chart every time I started over, I created a web app to help myself and others create progress diagrams to achieve their fitness goals.

With Colour My Change, participants enter their starting weight and their goal weight, click Generate, and a printable PDF is generated for them. Participants can then stick the chart to a wall, and colour in the chart for every pound or kilogram lost. Having a physical piece of paper instead of an app works well for me for staying accountable every day.

How It’s Built

It’s built with Python, using the Pillow and Flask libraries, and runs in a kubernetes cluster. Flask serves two endpoints, the first is the static HTML front page, and the second is an API used to generate the PDF with the pillow library. The entire thing runs in a single docker container, scaled across my kubernetes cluster with multiple replicas to handle traffic spikes.

My Hope

I’m hoping this project will help others achieve their goals, and also that it helps me achieve mine. If you’ve used Colour My Change, please send me photos of your printed out chart – I’d love to feature them on the site.

Recent Projects