Terug naar projecten

JoJosPops

CASE STUDY / CMGT Pokéball Ontdek het project ↓
JoJosPops PROJECT / JB

Over het project

JoJosPops is een cross-platform mobiele applicatie voor het organiseren en ontdekken van pop-up events. De frontend is gebouwd met React Native en Expo in TypeScript en communiceert via een REST API met een Laravel-backend. Een belangrijk technisch uitgangspunt is dat exacte eventlocaties pas na de ingestelde reveal_time worden vrijgegeven.

  • Pop-up events aanmaken en ontdekken
  • Uitgestelde vrijgave van exacte locaties
  • OTP-verificatie, notificaties en premiumfuncties

Highlights

Events & Community

Gebruikers, vriendschappen, events en aanvragen centraal gekoppeld

Delayed Location Reveal

Exacte coördinaten blijven verborgen tot de reveal_time is verstreken

Beveiligde locatievrijgave

De Laravel API geeft latitude en longitude pas vrij nadat reveal_time is verstreken. Tot dat moment ontvangt de app alleen een globale wijk- of buurtindicatie.

E-mail en OTP

OTP-verificatie verloopt via Mailgun, pushnotificaties via Firebase Cloud Messaging en premium-gebruikers worden afgehandeld via Stripe Billing.

Media-opslag

Relationele data wordt opgeslagen in MySQL 8.4. Media en event-flyers worden extern bewaard via een beveiligde SFTP-verbinding met StackStorage en niet lokaal op de applicatieserver.

Performance & betrouwbaarheid

Core API-endpoints hebben een doelresponstijd van maximaal 2 seconden. Externe API-fouten worden opgevangen en gelogd, terwijl timestamps in UTC worden opgeslagen voor consistente synchronisatie.

Netwerkbeveiliging

De productieomgeving is ingericht met DDoS-bescherming, CDN en Edge-caching. Rate-limiting helpt piekbelasting rond het vrijgeven van eventlocaties beheersbaar te houden.

Onderhoudbare architectuur

De Laravel-backend volgt PSR-standaarden en een MVC-structuur met Models, Controllers en Services. De repositories documenteren vereisten, omgevingsvariabelen en reproduceerbare installatie.

Technologieën

Expo React Native TypeScript Laravel REST API MySQL 8.4 Firebase Cloud Messaging Google Maps & Places API Mailgun Stripe Billing