Voting app - Bricks and More

Experience Bricks & More's LEGO showcase in Belgium, powered by a Django-based voting app for seamless audience interaction. Tech meets fun!

Voting app - Bricks and More
Image by me. Generated by Midjourney.

Bricks and More is a fair, organised yearly at the Thomas More Univeristy of Applied Sciences, located in Geel, Belgium. They offer you 2.500 square metres of LEGO creations built by lots of creators.

This fair attracts a lot of people and has been growing every year. In the 2021 edition there were over 5.000 fans present.

Voting app

The Bricks and More founder wanted to have a system built to facilitate voting on creations on several categories. Since the fair is being organised at our school, we were the logical choice for this question.

My colleague Frederik Gielis has built an entire voting app, tailored to the needs of the team behind Bricks and More, as well as the people visiting the fair.

He built this application by making use of Python and a web framework called Django. In this framework he created several API routes and also created a front-end for the interaction with the people visiting the fair.

Deployment

This is the part where I come in. Frederik has built a nicely working application, but at the time did not know how to make this available publicly. As I have done this lots of times before, it was logical of him to ask me for help.

My first solution would have been to host his applicaion on Heroku, but as they have killed the free tier, we had to come up with a better solution.

I pointed Frederik towards a few good Docker and containerisation tutorials whilst I setup a Ubuntu Server, after which I installed Docker on this server. Together with Frederik we walked through the steps needed to containerise his application. Afterwards we also setup a GitHub Actions workflow to automatically build a new version of the container with each new version tag.

Next it was time to deploy this application on the server. For this I started out by setting up a Cloudflare Zero Trust Tunnel. This lets us expose web applications publicly, without the need of port forwarding and the added benefit of basic security done by Cloudflare.

Afterwards I installed the application together with Frederik and we succesfully ran this publicly.

Summary

The application was 100% available during the whole fair. We would like to call this a success. The Bricks and More founder was also satisfied as he was able to see what people liked more and liked less. This will greatly help them improve strategic decisions in the next editions.

Pictures