Naar de inhoud
POLARGATE
Golf en leisure, toerisme aan de Costa del Sol

Estepona Golf: een drietalige golfsite met een echte handicapcalculator

Een nieuwe website voor een 18-holes baan aan de Costa del Sol, vanaf nul gebouwd in het Spaans, Engels en Frans, met een eigen Supabase backend, nieuwsbeheer in handen van de club en een WHS course handicap calculator op officiële federatiegegevens.

Homepage van de site van Estepona Golf: de kop Donde la Sierra Bermeja abraza el Mediterráneo boven een luchtfoto van de baan, de bergen en de zee.
estepona-golf.vercel.app
536/536
vertaalsleutels aanwezig in elk van de drie talen
251 KB
gewicht van de hero, eerder 1,3 MB
3
talen met eigen URL's, slugs, hreflang en sitemap
18
holes beschreven door de club, op een scorekaart met 4 tees
0
TypeScript fouten na twee adversariële auditrondes
~10 USD
maandelijkse kosten van de eigen backend van de club op Supabase

Het probleem

Estepona Golf verkoopt starttijden, events en een restaurant aan spelers uit Spanje, het Verenigd Koninkrijk en Frankrijk. De oude site draaide op Azure Static Web Apps, zonder contentbeheer voor nieuws, zonder leadformulieren en zonder eigen URL's per taal, waardoor zoekmachines en AI assistenten één site zagen waar er drie nodig waren. De baan zelf, de 18-holes, de seizoenstarieven en de officiële sloperatings, stond in pdf's en op gedrukte scorekaarten die niemand vooraf kon inzien.

Wat we bouwden

Polargate bouwde een nieuwe drietalige site vanaf nul op de vaste stack: Vite, React, TypeScript en Tailwind met shadcn/ui aan de voorkant, een eigen Supabase project (Postgres, Auth, Storage en row level security) als backend, en Vercel met deploys vanuit GitHub bij elke merge. Elke taal heeft eigen routes en slugs, hreflang, canonical, og:locale en sitemap. De club kreeg een adminpaneel met rollen en nieuwsbeheer, leadformulieren, een interactieve scorekaart van 18-holes met vier tees en een WHS course handicap calculator op officiële RFEG gegevens.

Het resultaat

De oplevering telt 536 van de 536 vertaalsleutels in elk van de drie talen, een hero die van 1,3 MB naar 251 KB ging en nul TypeScript fouten na twee adversariële auditrondes waarin 63 bevindingen zijn nagelopen en de 7 bevestigde zijn opgelost. De backend is eigendom van de club en kost ongeveer 10 dollar per maand op Supabase. De site draait op Vercel terwijl de domeinverhuizing wordt voorbereid, dus Polargate publiceert er nog geen verkeers- of boekingscijfers over.

Stack

  • Vite
  • React
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • Supabase
  • PostgreSQL
  • Vercel
  • GitHub
  • Google Maps
estepona-golf.vercel.app

Een baan die in drie talen verkoopt

Estepona Golf is een 18-holes baan aan de Costa del Sol, met clubhuis, restaurant, pro shop en een eventsactiviteit. De spelers komen uit Spanje, het Verenigd Koninkrijk en Frankrijk, en beslissen voordat ze reizen. De oude site draaide op Azure Static Web Apps, zonder contentbeheer voor nieuws en zonder leadformulieren.

Wat we aantroffen

  • Geen eigen URL's per taal: zoekmachines en assistenten zagen één site waar er drie nodig waren.
  • Content die de club niet zelf beheerde: baan, holes, tarieven en menukaart stonden in pdf's en op papier.
  • Zware beelden: alleen de hero woog al 1,3 MB voordat de rest laadde.
  • Scorekaart en officiële sloperatings alleen op papier, dus een speler kon zijn course handicap niet uitrekenen voor het boeken.

Wat we hebben gebouwd

Een nieuwe site vanaf nul in het Spaans, Engels en Frans: home, de baan, hole voor hole, tarieven met seizoenswissel, clubhuis, shop, restaurant met een kaart van 130 gerechten, events, nieuws, contact en juridische pagina's. Stack: Vite, React en TypeScript, Tailwind met shadcn/ui, een eigen Supabase project (Postgres, Auth, Storage en row level security) als backend, en Vercel met deploys vanuit GitHub bij elke merge.

Drie onderdelen wogen zwaarder dan de rest:

  • Gelokaliseerde routes en slugs per taal (el-campo, the-course, le-parcours), met hreflang inclusief x-default, canonical en og:locale per taal, en JSON-LD met de echte openingstijden en het telefoonnummer van de club.
  • Een WHS course handicap calculator met de officiële slope- en course rating gegevens van de RFEG voor de gewaardeerde tees, WHS afronding, Spaanse decimale komma, plushandicaps, foutmeldingen en resultaten die via aria-live worden voorgelezen.
  • Een adminpaneel met Supabase Auth, rollen voor beheerder en redacteur en een nieuwsbeheerder, zodat de club publiceert zonder ons.

Hoe het nu draait

De vertalingen zijn volledig, 536 van de 536 sleutels per taal, dus geen enkele pagina valt halverwege terug op het Spaans. De hero weegt 251 KB in plaats van 1,3 MB. Voor het samenvoegen van de laatste ronde clientmateriaal deden we twee adversariële audits: 37 bevindingen en daarna 26, waarvan er 7 overeind bleven en zijn opgelost, met nul TypeScript fouten en een groene productiebuild.

De backend is het eigen Supabase project van de club in eu-west-1, voor ongeveer 10 dollar per maand, met nieuws, leads en rollen achter row level security: het publiek leest alleen gepubliceerd nieuws, medewerkers schrijven, en de contact- en eventformulieren accepteren anonieme inzendingen die alleen beheerders lezen. De site is klaar en draait op Vercel terwijl de domeinverhuizing wordt voorbereid, en we brachten eerst de DNS zone in kaart zodat de omzetting de mail van de club niet raakt. Na livegang onderhoudt Polargate de site met een maandelijks Care abonnement.

FAQ

Vragen over dit project

Hoe lang duurt het om zo'n drietalige website te bouwen?
De eerste volledige versie van Estepona Golf stond er ongeveer zes weken na de briefing: discovery in april 2026, build afgerond op 26 mei 2026. De Franse versie, de gelokaliseerde slugs en de verhuizing naar onze eigen Supabase en Vercel volgden in juni, en het materiaal van de club, holebeschrijvingen, officiële sloperatings en federatielogo's, kwam in latere rondes in de zomer. Zo'n site kost weken, geen maanden, zodra de content klaar is.
Kunnen jullie dit doen met onze bestaande boekingsengine?
Ja, en we behandelen de boekingsengine als een vast punt, niet als iets om te vervangen. Bij Estepona Golf bestond de scope uit de drietalige site, het nieuws-CMS, leadformulieren en de handicapcalculator, dus het boeken van starttijden viel erbuiten. Wil een club een diepere koppeling, dan linkt Polargate per taal naar de engine, houdt de analytics over de overgang heen intact en voegt een formulier met database toe voor de groepen en events die de engine niet dekt.
Wie werkt het nieuws en de content bij na livegang?
De club zelf. We bouwden een adminpaneel met Supabase Auth, rollen voor beheerder en redacteur en een nieuwsbeheerder, zodat het team berichten met beeld schrijft, bewerkt en publiceert zonder ons. Dankzij row level security leest het publiek alleen gepubliceerd nieuws en schrijven alleen ingelogde medewerkers. Structureel werk, nieuwe secties, een vierde taal, nieuwe paginatypes, valt onder het Care abonnement.
Is de Franse versie een echte site of een automatische vertaling?
Het is een echte site per taal. Alle 536 vertaalsleutels bestaan in het Spaans, Engels en Frans, dus niets valt halverwege terug, en elke taal heeft eigen slugs (el-campo, the-course, le-parcours), een eigen canonical, hreflang met x-default en eigen vermeldingen in de sitemap. De beschrijvingen van de 18-holes komen uit het eigen materiaal van de club in drie talen, niet uit een machinevertaling van het Spaans.
Wat kost het draaien van zo'n site als hij eenmaal live is?
De platformkosten zijn laag: het eigen Supabase project van de club (Postgres, Auth en Storage) kost ongeveer 10 dollar per maand en de hosting draait op Vercel. Alles is eigendom van de klant, de repository, de database en het domein, dus er is geen afhankelijkheid van een paginabouwer. Daarnaast staat het Care abonnement van Polargate voor onderhoud, beveiligingsupdates en doorontwikkeling, los begroot van de build.
INITIATE

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.