644 Live Listings Observed. Real Surf Physics.A Full Almanac For Santa Teresa.
A directory, editorial almanac and live surf report for Costa Rica's most sought-after surf town. Built from scratch with a curated listings database, a physics-informed surf report and a full editorial layer.
The Actual Interface.
A Great Swell And Nowhere To Look It Up.
Santa Teresa gets one of the best and most consistent swells in Central America. It also gets no shortage of tourists who do not know where to eat, stay or paddle out.
Onda is the almanac that fixes that: a curated listings database, a physics-informed surf report and a full editorial layer, in one platform.
Directory, Surf And Editorial On One Platform.
644 live listings were observed during the current capture. Restaurants, surf schools, yoga studios, accommodations, tours and more. Every listing has photos, hours, GPS coordinates and editorial context. Curated, not scraped, and categorised, filterable and searchable.
A physics-based surf report. Not a weather embed. Live swell data pulled from buoy and forecast APIs, processed into a real-time dashboard: wave height, period, wind direction, tide state, and a quality score that factors all of them. Built for surfers, not tourists.
Interactive map. A custom-styled MapLibre GL map. Browse all hundreds of listings spatially, filter by category, search by radius. Coordinates are stored as PostGIS geometry in Supabase, so proximity queries run at the database layer rather than in the browser.
Editorial layer. A full editorial section written as part of the project: area guides for every neighbourhood, month-by-month seasonal travel advice, and locals-only recommendations, enriched with Exa search for contextual discovery. Content strategy and copy produced by ZipLyne.
The Data Layer Does The Spatial Work.
Supabase and PostGIS. Listings are stored with
geography(Point, 4326) columns. Radius search uses
ST_DWithin for fast spatial queries without pulling coordinates to
the frontend, and RLS policies isolate admin write access.
MapLibre GL JS. A custom map style built to match the Onda design language. Cluster markers at low zoom, individual pins at street level, and category filters that update the map source in real time without re-fetching.
Exa search enrichment. Exa powers contextual content discovery across the editorial section. Related guides, linked experiences and recommended reads surface alongside curated content, keeping depth without adding editorial overhead.
- Next.js
- Supabase
- PostGIS
- MapLibre GL
- Exa
- Open-Meteo / NOAA
Let’s Build What’s Next.
Bring the business problem. We’ll talk through what would make a difference and where to start.
Book A Call