Een op maat gebouwd operatiesysteem voor Elite Smart Build
Elite Smart Build, een Spaanse aannemer gespecialiseerd in hotelrenovaties en actief in ruim twintig landen, stuurde elk project aan met spreadsheets en e-mail. Polargate verving dat door elf modules op Supabase en React: dagelijkse Gantt, marges afgeschermd per rol, meldingen per afdeling en materiaalontvangst met automatische incidenten.

- 11
- modules opgeleverd in fase 1
- 23
- Postgres-tabellen met verplichte row-level security
- ~1 maand
- van start ontwikkeling tot eerste testbare versie in productie
- 10
- rolgebaseerde accounts live op het eigen domein van de klant
- 59
- auditbevindingen bevestigd en opgelost vóór de klanttest
Het probleem
Elite Smart Build renoveert hotels in ruim twintig landen en stuurde elk project aan vanuit spreadsheets. Elke bouwplaats had een eigen werkboek, de dagplanning was een Gantt die iemand met de hand bijhield en de rest ging per e-mail tussen zeven afdelingen. Niemand keek op hetzelfde moment naar dezelfde versie van de werkelijkheid. Eén coördinatiefout tussen inkoop, logistiek en uitvoering had al een verlies van zes cijfers gekost op één project: verkeerd materiaal besteld, niet opgemerkt bij ontvangst, geplaatst en daarna weer verwijderd en opnieuw gedaan.
Wat we bouwden
Polargate begon bij de werkboeken en de procesplaat met vijf fasen die Elite al gebruikte, maakte daar een genormaliseerd datamodel van en beantwoordde samen met de klant schriftelijk twaalf openstaande modelleervragen voordat er iets werd gebouwd. De scope lag vast in een ondertekende specificatie: elf modules voor fase 1, met de financiële module en de klantfacturatie er expliciet buiten. Daarna bouwden we een mobile-first webapplicatie op Vite, React, TypeScript en Tailwind, met Supabase Postgres, Storage, Auth en Edge Functions eronder, uitgerold op Vercel en draaiend op het eigen domein van de klant.
Het resultaat
De eerste testbare versie stond ongeveer een maand na de start van de ontwikkeling in productie, met tien rolgebaseerde accounts en de meldingenmotor die elke werkdag draait. Row-level security is verplicht op alle 23 tabellen en een databasetrigger schrijft elke wijziging weg in een onveranderlijk auditlogboek. Voordat de eerste gebruiker inlogde, leverde een adversariële multi-agent audit 59 bevestigde bevindingen op, waarvan één blocker, en die zijn allemaal opgelost. De applicatie wordt nu getest door de klant met wekelijkse reviews, en cijfers over gebruik of rendement zijn er nog niet.
Stack
- Vite
- React
- TypeScript
- Tailwind CSS
- shadcn/ui
- React Router
- Supabase
- PostgreSQL
- Deno
- Resend
- Vercel
- GitHub
- Claude
De context
Elite Smart Build renoveert hotels compleet zonder constructieve ingrepen, dertien jaar actief en met meer dan 200 projecten in twintig landen, stuurde elk project aan met spreadsheets. Elke bouwplaats had een eigen werkboek, de dagplanning was een Gantt die met de hand werd bijgehouden en de rest ging per e-mail. Zeven afdelingen werkten met kopieën van kopieën. Eén coördinatiefout tussen inkoop, logistiek en uitvoering had al een verlies van zes cijfers gekost op één project: verkeerd materiaal besteld, niet opgemerkt bij ontvangst, geplaatst en daarna opnieuw gedaan.
Wat we in de discovery vonden
We zijn begonnen bij wat Elite al gebruikte, niet bij een leeg blad. We lazen vijf werkboeken die in gebruik waren (drie werkprocedures, de projectkalender 2026 en de offertelijst 2026), de J-500 procesplaat met vijf fasen en de e-mailketen over een zending die misging. Daaruit kwamen de entiteiten die ertoe doen: projecten, fasen, afdelingen, mensen, leveranciers, offertes, zendingen, ontvangsten en incidenten. Twaalf openstaande modelleervragen gingen terug naar de klant en zijn schriftelijk beantwoord voordat er applicatiecode bestond. De scope lag vast in een ondertekende specificatie: elf modules voor fase 1, met de financiële module en de klantfacturatie er expliciet buiten.
Wat we hebben gebouwd
Een mobile-first webapplicatie op Vite, React 19, TypeScript, Tailwind en shadcn/ui, met Supabase Postgres eronder en hosting op Vercel.
- Kalender: dagelijkse Gantt van de lopende projecten met de vakmensen die per dag zijn ingepland.
- Offertes: kosten en marge worden per rol afgeschermd via een databaseview, zodat een uitvoerder en de directie andere kolommen zien van dezelfde regel.
- Agenda: taken per afdeling met een stoplicht op werkdagen en een schriftelijke toelichting zodra iets blijft liggen.
- Incidenten en materiaalontvangst: de controle gaat regel voor regel en een afwijking maakt automatisch een incident met foto aan.
- Checklists per J-500-fase en afdeling, plus leveranciers, mensen, beschikbaarheid en meldingen.
Hoe het nu draait
De toegangscontrole zit in de database, niet in de interface: row-level security staat aan en is verplicht op alle 23 tabellen, rollen komen uit een enum met tien waarden en een trigger schrijft elke wijziging weg in een onveranderlijk auditlogboek dat alleen de directie kan inzien. Een Supabase Edge Function op Deno draait van maandag tot en met vrijdag en mailt elke afdeling de openstaande punten vanaf het eigen domein van de klant, geverifieerd met DKIM en SPF via Resend.
De applicatie is snel opgezet in Lovable en daarna volledig losgekoppeld: een eigen GitHub-repository, een eigen Supabase-project en een eigen Vercel-deploy, zonder afhankelijkheid van een omgeving van derden. Voordat de eerste gebruiker inlogde, draaiden we een adversariële multi-agent audit met 59 bevestigde bevindingen, waarvan één blocker, en die zijn allemaal opgelost. De eerste testbare versie stond ongeveer een maand na de start van de ontwikkeling in productie, met tien rolgebaseerde accounts en wekelijkse reviews met het team van de klant.
Vragen over dit project
Hoe lang duurt het om onze spreadsheets te vervangen door een systeem op maat?
Kunnen we op de bouwplaats blijven doorwerken terwijl het systeem wordt gebouwd?
Wie kan de kosten en marges in het systeem zien?
Werkt het op een telefoon op de bouwplaats?
Zijn de code en de database van ons?
Gerelateerd werk
Start de motor
Vertel ons in een paar korte vragen wat je bouwt. Een senior engineer antwoordt binnen twee werkdagen schriftelijk met een eerste inschatting van scope, planning en prijs.
