Case study
Par-5: a programmatic directory of every golf course in America.
Twelve thousand courses, mapped by state and town from open data, on a static architecture with no database behind the pages a visitor ever sees.
The situation
Par-5 is a product rather than a client brochure, and it started from a blank file. The premise is a directory of every golf course in the United States, organised so a golfer can answer one question quickly: what is worth playing near me.
The hard part is not the design. It is that a directory of this size fails in two predictable ways. Either the data is invented to fill pages, which poisons the whole corpus, or the site is built on a database that has to answer every request, which makes twelve thousand pages slow and fragile. Par-5 was built to avoid both.
What got built
A three-tier page hierarchy — state, then town, then course — covering all fifty states and the District of Columbia, currently mapping 12,464 courses. Every course page states only what the source data supports: name, location, hole count where present, and the course website where one exists.
That restraint is a deliberate rule rather than an oversight. No invented history, no invented designers, no invented ratings or hole descriptions. A thin honest page beats a rich fabricated one, and at this scale fabrication would be the fastest way to make the entire directory worthless.
Around the directory sit the things that make it usable:
- A near-me route and a national map for browsing by location
- Rankings by longest, hardest, oldest, shortest, easiest, and private
- A driving-range index alongside the course set
- Four calculators: handicap index, course handicap, score differential, and Stableford points
The state maps are drawn from real projected geometry rather than rough outlines, which is why a course on Nantucket lands on Nantucket. Alaska and Hawaii get their own inset frames with their own projections, and the small eastern states are pulled out to a callout rail so they stay clickable at any size.
How it is built
Static HTML only. No framework, no server-side rendering, no client-side routing. A dependency-free Node build reads the data and writes the finished pages, which deploy to Netlify as flat files. Nothing is computed while a visitor waits.
Course data comes from OpenStreetMap contributors and OpenGolfAPI under the Open Database License, with scorecard data via GolfCourseAPI. Google Places data is excluded by policy — its terms do not permit this use, and building a corpus on data you are not allowed to keep is not a foundation. An iOS shell is wired through Capacitor so the same product can ship to the App Store.
Where it stands
The directory is live at par-5.com with state, town, and course pages published nationally, the rankings and calculators in place, and the map picker running on the real-geometry engine.
Twenty free minutes. Bring your worst website.
Or no website at all. A free 20-minute consult, a straight answer, and zero pressure either way.