Skip to main content
For Locals

Bay Area Events

Finding something to do in the South Bay means scanning a half-dozen event sites, none of which know what you actually like, so you either drown in listings or miss the good stuff entirely.

Launch Bay Area Events

What it does

Get a curated read on Bay Area arts, comedy, live music, and workshops, scored by your own preferences instead of a generic chronological feed.

Currently

Live at /bay-area-events. It scrapes several local sources on a daily cron, geocodes venues for a clustered map, and re-ranks the browse list against per-visitor preferences stored in your browser. No account needed. A seven-region picker lets you scope to all of the Bay Area or a single sub-region. Built into the k8mak.com site on Supabase.

Recently shipped

  • Jun 15, 2026Shipped a UX backlog: a how-this-works explainer, a seven-region picker, a personalization teaser that deep-links into Browse, and mobile category-pill scrolling.
  • Jun 14, 2026Fixed the scrapers after date-hardening exposed stale selectors: funcheap via JSON-LD, dothebay via schema.org microdata, and SJPL via the library gateway API.
  • Jun 13, 2026Added per-visitor preferences, a cached geocoding map layer, an admin scraper-health page, and date-parse hardening.
  • Jun 10, 2026Shipped the public app, ported from a standalone repo onto the site on Supabase, seeded with real events.

How it's built

SupabaseExternal APIsPulls live dataSolo

How I built it

I wanted a single place to see what is happening in the South Bay that actually pays attention to what I like, so I built one and made it public. It pulls from several local sources every day, puts venues on a map, and quietly re-ranks everything against the preferences you set, all stored in your browser with no account. The part that taught me the most was the plumbing nobody sees: when I hardened the date parsing, I discovered that several scrapers had only ever appeared to work because undated events defaulted to today, so I had to rebuild them against each site's real markup. This is the public, decoupled version, distinct from the private couples edition I keep inside our household hub.