Gladioforce

Gladioforce

OPO: Project 4.0

Een uitgebreid ledenbeheersysteem ontwikkeld voor het Gladiolen festival, bekend als het beste kleine festival van Europa. Dit was een echt klantproject waarbij ons team van zes studenten een complete oplossing leverde voor het beheren van het festival en het automatiseren van de meest tijdrovende administratieve taken.

Project Overzicht

Duur: 3 maanden (februari - april 2024)
Teamgrootte: 6 ontwikkelaars (3 studentent Cloud and Cybersecurity & 3 studenten applicatie ontwikkeling)
Rol: Full-stack ontwikkelaar
Klant: Gladiolen festival organisatie

GitHub Contributions

Belangrijkste Functies

  • Beheer: Compleet administratief beheer van het festival
  • Edities: Beheer van verschillende festival edities
  • T-shirts: Beheer van festival merchandise
  • Kernleden: Registratie en beheer van kernleden
  • Vrijwilligers: Registratie en beheer van vrijwilligers
  • Verenigingen: Beheer van deelnemende verenigingen
  • Prikklok: Tijdsregistratie systeem voor medewerkers

Administratie pagina Tijdsregistratie systeem

Technische Implementatie

Backend

  • Django Python met Django Ninja voor snelle, type-veilige API endpoints
  • MySQL database voor data opslag
  • Swagger volgens de openAPI specificaties voor API documentatie
  • Firebase integratie voor extra functionaliteiten

Frontend

  • Angular framework voor een responsieve single-page applicatie
  • SASS voor geavanceerde styling mogelijkheden
  • Material Design componenten voor consistente UI/UX

Infrastructuur

  • Docker Compose voor containerisatie en deployment
  • Terraform voor infrastructuur als code
  • AWS hosting met gescheiden productie en lab omgevingen
  • Web Tier en App & DB Tier architectuur voor optimale schaalbaarheid en veiligheid

Documentatie

  • Installation Guide: Gedetailleerde instructies voor lokale installatie
  • Host Installation Guide: Handleiding voor deployment op productie servers
  • User Manual: Uitgebreide gebruikershandleiding voor eindgebruikers (PDF downloaden)

Uitdagingen & Oplossingen

Uitdaging: Meerdere frontends laten draaien op één grote API met verschillende sub-API’s
Oplossing: Modulaire API architectuur met duidelijke scheiding van verantwoordelijkheden

Uitdaging: Timemanagement en planning
Oplossing: Verbeterde communicatie en realistische tijdschema’s

Geleerde Vaardigheden

Soft Skills

  • Communicatie: Helder en frequent afstemmen, misverstanden voorkomen
  • Samenwerken: Rollen verdelen, elkaar ondersteunen, feedback geven
  • Timemanagement: Prioriteiten stellen, taken plannen, voortgang bewaken
  • Probleemoplossend denken: Snel oplossingen bedenken bij obstakels

Technische Skills

  • Firebase implementatie en integratie
  • Swagger volgens de openAPI specificaties
  • Meerdere frontends laten draaien op één grote API met verschillende sub-API’s
  • Verschil tussen productie en lab omgeving in AWS

Stack

  • Backend: Django, Django Ninja, MySQL
  • Frontend: Angular, TypeScript, SASS
  • Infrastructuur: Docker Compose, Terraform, AWS
  • Extra Technologieën: Firebase, Swagger

Mijn aandeel

Binnen dit project heb ik de volledige verantwoordelijkheid genomen voor de back-end, zowel qua architectuur als ontwikkeling. Ik ontwierp en implementeerde de API, de database en de integratie met externe diensten zoals Firebase. Ook heb ik een leidende rol gespeeld in de keuzes voor de gebruikte technologieën en de samenstelling van de stack. Daarnaast heb ik de codebase modulair en schaalbaar opgezet, zodat deze eenvoudig uit te breiden en te onderhouden is.

Naar het einde van het traject heb ik ook actief bijgedragen aan de front-end ontwikkeling, onder meer door het oplossen van complexe issues, het optimaliseren van de gebruikerservaring en het implementeren van belangrijke functionaliteiten in Angular.

Naast mijn technische bijdrage heb ik regelmatig het team ondersteund met kennisdeling, code reviews en technische coördinatie, zodat de kwaliteit en voortgang van het project gewaarborgd bleven.

Hoewel het project in teamverband werd uitgevoerd, heb ik veruit het grootste deel van het werk op mij genomen. Mijn inzet, technische expertise en coördinerende rol waren doorslaggevend voor het succes en de kwaliteit van het eindresultaat.

Resultaten

  • Volledig functioneel administratiesysteem voor het Gladiolen festival
  • Gestroomlijnde processen voor vrijwilligers- en ledenbeheer
  • Schaalbare en onderhoudbare codebase voor toekomstige uitbreidingen

Bezoek het project op GitHub