Skip navigation
Logo: Zenjoy is an AI-first digital product studio based in Leuven. We build meaningful digital products, websites, and mobile applications.

Karavaan & Joker

Platform for volunteers with wanderlust

Client
Karavaan & Joker

Services
Webdesign, Branding, Mobile App, Web Development

View project
Bingo & Gloria

Description
Wanted: digital treasure trove of information for world explorers

Challenge

Karavaan & Joker, the volunteer organization behind Joker's sustainable group travels and the travel organization for journeys with that extra touch, faced the challenge of digitalizing collaboration between volunteers and the organization.

They wanted to transform the trip preparation work, which was previously done mainly through word documents, into a dynamic platform where volunteers could exchange and manage information together.

The rich knowledge and experience that volunteers possess about the best locations, unique experiences, and local contacts could thus be brought together in a searchable database for future tour guides.

Aanpak

We zijn niet meteen beginnen bouwen. Samen met Frank van MeBioS hebben we de eerste weken het domein grondig doorgewerkt. Hoe werken lijmplaten? Wat is een meetmoment precies? Welke insecten zijn relevant bij welk gewas? Hoe verhouden onderzoekscentra zich tot landbouwbedrijven en individuele telers?


Dat leverde een domeinmodel op dat verrassend complex bleek: bedrijven die percelen beheren, percelen gekoppeld aan gewassen en target-insecten, meetmomenten met meerdere foto's per plaat, en een volledige AI-verwerkingsketen daarachter. Zonder dat voorwerk hadden we halverwege opnieuw moeten beginnen.

Van organisatie tot insectendetectie

Twee lagen: wie beheert de data en wat gebeurt er tijdens een meting?

Het inzicht: ontkoppel het model van de infrastructuur

Vrij snel werd duidelijk dat we het bestaande Python-model niet moesten herschrijven of aanpassen. We moesten het inpakken.

Het ML-model van MeBioS werkte. Research code, niet productie-ready, maar de detectie zelf was solide. We hoefden geen beter model te bouwen. We moesten zorgen dat 50 gebruikers tegelijk foto's konden uploaden zonder dat iemand een server draaide.

Serverless containers op Scaleway bleken de juiste fit. Het bestaande Python-model draait ongewijzigd in een Docker-container. Een Supabase edge function triggert die container zodra een gebruiker foto's uploadt. De container downloadt de foto's uit object storage, draait de detectie, uploadt de resultaten, en rapporteert via callbacks realtime progressie terug naar de webapp. Detecties landen in de database met bounding boxes, zekerheidsscores en uitsnedes per insect.

Geen eigen servers. De pipeline schaalt mee en staat stil als er niks te doen is. Voor een onderzoeksinstelling is dat precies goed: je betaalt voor wat je gebruikt.

Drie paden, één realtime resultaat

Upload, verwerking en terugkoppeling lopen apart. Er is geen vaste applicatieserver.

Van labo-tool naar veld-app

De frontend bouwden we als een client-side React-applicatie met Supabase als backend. Geen custom server nodig. Deployment via Cloudflare Pages, en de architectuur is zo opgezet dat KU Leuven het op termijn zelf kan hosten op hun eigen GitLab Pages.

Het dashboard toont recente metingen en trendlijnen per insectsoort, met waarschuwingen als drempelwaardes overschreden worden. Foto-upload werkt op mobiel, zodat telers in het veld direct aan de slag kunnen. Na verwerking toont de app bounding boxes op de foto met zekerheidsscores. Onderzoekers kunnen via een annotatie-interface resultaten verifiëren of corrigeren. Die validaties helpen op termijn ook om het model zelf beter te maken.

Onderzoekscentra beheren bedrijven en gebruikers, admins hun eigen team, telers zien hun eigen metingen en rapporten. Insectnamen en gewassen zijn drietalig (Nederlands, Engels, Frans). Alles is exporteerbaar naar CSV of Excel voor verdere analyse of publicatie.

Authenticatie gaat via magic links: een code via e-mail in plaats van wachtwoorden. Dat houdt de drempel laag voor telers die niet dagelijks met software werken.

Moeilijke foto's, eerlijke tijdsinschatting

Foto's van lijmplaten zijn groot. Soms meer dan 100 megabyte. Thumbnails genereren in de browser zonder de hele machine te laten vastlopen bleek een flinke klus. De oplossing: WebAssembly gecombineerd met canvas-rendering.




De keuze voor een client-side only architectuur bracht ook complexiteit mee bij authenticatie en Row Level Security. En het project heeft meer uren gekost dan oorspronkelijk ingeschat. Deels door die technische onverwachtheden, deels doordat de zomer voor een lossere werksfeer zorgde bij zowel ons team als de klant.




We hebben daar intern flink over nagedacht. Scherper afbakenen aan de start, en eerder aan de noodrem trekken als iets langer duurt dan verwacht.

Result

We developed an extensive web app and accompanying mobile app.

This platform is used to prepare hundreds of quality trips annually, with the ability to exchange information, and thanks to the mobile app, this information is always within reach.

Meanwhile, the application has been expanded with new features and there are many more on the organization's and volunteers' wish list. So our journey isn't over yet!

Do you have a project for us?

We'd love to hear from you!

Other cases

Maarallee

Hoe een lean citizen-science-app Vlaamse spraak verzamelt om AI beter te laten luisteren

Maarallee is een live citizen-science-app waarmee Scivil Vlaamse spraakdata kan verzamelen zonder zwaar platform achter de schermen.