An internal planner for managing volunteers
Semi-automatic, blazing fast management tool for planning and managing your employees and tasks
Being a member of the board of Ringkøbing Biograf, I saw that we had a big problem regarding managing our volunteers. The system we had only worked for adding yourself to a job or two, but had zero statistical abilities, which we really needed.Therefore, set out to build the ultimate tool for us to use internally. Built using cakephp, fullcalendar, jquery and bootstrap this fine product was born. Well... version 1 was.
The first version
The first version was fine in the beginning in the start, but quickly got slower as more and more volunteers and events was added to the database - it was clear that some serious changes were to be made to the codebase.
I ended up making a new branch and immediately deleting everything, and I mean everything. From here on out I kept only the ideas and started to recreate the app entirely from scratch. This resulted in a frontend which is a lot more user friendly on touch devices and huge speed optimizations to both the frontend and backend generally. Caching was also implemented where needed to make sure that unneeded processing is not made. The event calendar itself has gone from ~8-9 seconds per load to ~200ms with a full schedule.
The frontend is built using SCSS, Bootstrap, jQuery and FullCalendar with gulp to concatenate and compile styles and scripts.The backend is built using Cakephp, Mariadb (Mysql) and Redis caching for keeping the event calendar blazing fast.Hosting is, of course, done on my own private server running Ubuntu 20.04, nginx and php 7.4.