ProductWeb App, SEO, AI Automation
SmashConnect
A directory of weekly badminton and pickleball socials in Australia, from first commit to production in seven days, with listings found and read by AI from venues' own websites.
Case study · Directory web app
The challenge
Social badminton and pickleball games are scattered across Meetup groups, Facebook pages, WhatsApp chats and venue timetables. SmashConnect puts them in one search, keeps them current, and sends players straight to the organiser to join.
A directory is only useful if it's right. Schedules change, levels are described differently by every club, and daylight saving shifts start times.
The approach
A full-stack app on Cloudflare's edge. Nuxt 4 on Cloudflare Workers with a D1 database. Public pages are cached in Melbourne and load in about a tenth of a second.
AI that reads venue websites. The Claude API reads venues' own timetables and pulls out each game's day, time, level and price as structured data. A second AI pass checks it against the saved page, and every game waits in an admin queue until it's approved.
Programmatic SEO that stays clean. Every sport, state and suburb with games gets its own landing page, and a page is only indexed while there is something to play there. Each game carries SportsEvent structured data.
A loop that keeps it alive. A nightly job generates the next eight weeks of sessions. Organisers can claim and edit their listing with a magic link, and players can report wrong details.

The result
| At launch (8 November 2026) | |
|---|---|
| States | Victoria and New South Wales |
| Weekly games listed | 115 |
| Venue directory | About 590 venues |
| Automated tests | 963 unit and integration, 129 end-to-end |
| First commit to production | 7 days |
Need a directory, booking site or web app? See fast websites and web apps and AI automation, or read the full launch write-up.