Interactive Map Discovery
A Mapbox map with custom markers for events and businesses, category filtering and clustering to explore what’s nearby.
A web and mobile app for discovering places and planning a trip to Phuket. Behind the map, a scheduled pipeline collects events from multiple sources, removes duplicates, resolves venues and uses AI to turn listings and posters into structured data. A shared Fastify API serves the event catalogue, saved places and daily itineraries.
A Mapbox map with custom markers for events and businesses, category filtering and clustering to explore what’s nearby.
A scheduled pipeline pulling events from Eventbrite, Phuket101, SoftEvents and local news sites with deduplication, geocoding and venue resolution.
Anthropic Claude reads Facebook Smart News posters and unstructured listings to extract structured event data automatically.
Restaurants, bars and attractions enriched from Google Places and OpenStreetMap with photos, opening hours and locations.
Save events and businesses to a personal collection, synced to the account across sessions.
Build an itinerary from saved items, grouped and timelined into a date-by-date agenda.
A cream/teal editorial theme with custom typography (Newsreader / Hanken Grotesk) and a polished, content-first UI.
Email + password and Google sign-in via Better Auth, shared across the Expo client and Fastify server.
Expo Notifications for new events and itinerary reminders.
Uploads optimized with Sharp and delivered via Cloudflare R2 and Supabase storage.
Fastify with TypeBox schemas validating every request/response over Drizzle + Kysely on PostgreSQL.