FairCTO
NL·EN·DE
← All work

ChoiceMaker — portal.choicemaker.nl

A hospitality venue-discovery map — find cafés and venues in your city, with pins placed automatically.

2026·View live
ChoiceMaker — portal.choicemaker.nl
JavaScriptViteLeafletOpenStreetMapGeocoding

The challenge

Guests should be able to discover hospitality venues visually, on a map of their city — and someone has to keep every venue accurately pinned without placing them by hand.

What I built

An interactive venue-discovery map (search a city, browse venues as pins) for the ChoiceMaker hospitality product, with a geocoding pipeline that resolves venue addresses to precise coordinates automatically.

Stack & why

Leaflet + OpenStreetMap
Open-source mapping — no per-tile bill and full control over the venue pins and interaction, ideal for a focused discovery map.
Vite (vanilla JS)
A tiny, fast build with no framework overhead — the portal is a focused map UI, so it doesn't need one.
Geocoding pipeline
Venue addresses are resolved to lat/long automatically, so pins stay accurate as venues change — no manual placement.
Vercel deploy
Auto-deploy, with a vercel.json fix so the portal's build output is served from the right subdirectory.

How it works

  • Venues are searched by city and shown as pins on a Leaflet / OpenStreetMap map.
  • A geocoding step resolves each venue's address to coordinates and drops the pin automatically.
  • Solved a Vercel deploy gotcha where the build output sat in a subfolder — fixed with a vercel.json so the right directory is served.

Outcome

  • A self-maintaining venue map via automated geocoding — no pins placed by hand.
  • Built on open mapping (Leaflet / OSM), so there's no paid mapping provider in the stack.

My role

Engineer — the map portal and the geocoding pipeline.

Ready to make AI actually work?