Ik heb dit project opgezet volgens een MVC-structuur. Hierbij is de code opgedeeld in drie hoofdonderdelen: de Models (verantwoordelijk voor de databasefunctionaliteit), de Views (die zorgen voor de juiste weergave op het scherm) en de Controllers (die de meeste logica afhandelen). Daarnaast maak ik gebruik van enkele libraries die dienen als basis voor de models, views en controllers, of die meer algemene functies bevatten.
Voor de views maak ik gebruik van de Smarty library. Smarty biedt de mogelijkheid om op een eenvoudige manier logica toe te voegen aan HTML-bestanden, zonder dat daarvoor PHP-code geschreven hoeft te worden.
De basis van dit project is gevormd door een aantal eigen libraries. Sommige van deze libraries heb ik specifiek voor dit project ontwikkeld. Anderen dateren uit 2017/2018, toen ik ze tijdens het laatste jaar van mijn opleiding schreef. Deze oudere libraries heb ik tijdens de ontwikkeling van deze website waar nodig verbeterd.
De reden waarom ik geen gebruik heb gemaakt van Zend of Laravel is eenvoudigweg omdat ik het leuk vind om dit soort zaken zelf te ontwikkelen.
Om het ontwerp- en ontwikkelingsproces te vereenvoudigen, maak ik gebruik van Bootstrap. Met Bootstrap kan ik vrij eenvoudig een website bouwen die er redlijk uitziet en bovendien responsive is. Een bijkomend voordeel is de uitgebreide ondersteuning van zowel de ontwikkelaars als de gemeenschap. Bootstrap biedt solide ondersteuning voor aangepaste thema's, en er is een actieve marktplaats beschikbaar waar diverse thema's te verkrijgen zijn.