What this is. Wayfinder is a road trip itinerary tool. The current version is one custom-built trip page (the Yosemite 2026 family trip). The planned version is a generator that asks the right questions, then builds a trip page like that one for anyone, populated with their interests, accommodation preferences, and budget.
Why. Planning a multi-state road trip means jumping between recreation.gov, ReserveCalifornia, blogs, ranger reports, weather sites, gas price trackers, and a dozen Reddit threads. The output ends up in a Google doc that goes out of date the moment a campsite gets booked. The trip-page format works better. A questionnaire-driven generator turns that format into a tool other people can use.
The Vision
The Problem
Trip planning is fragmented. The traveler holds the route in their head, the reservations in their email, the gas estimate on a napkin, and the “things we want to see” on a phone note. By day three of the trip nothing matches anything. The accommodation tools that exist either skew to Airbnb-style luxury rentals or to pure-spreadsheet logistics. Nobody has built a planner that integrates camping, hot springs, kitschy roadside finds, fuel strategy, and a real budget into one living document.
The Insight
The Yosemite 2026 trip page works. Day cards plus reservation status plus roadside finds plus fuel plan plus budget, all on one page with a sticky nav. The format holds up to changes (cancellations, schedule shifts, new climbing plans) because every section is independently editable and the page is the single source of truth. That format can be generated from a structured questionnaire.
The Audience
- Phase 1: myself, my family, and the few friends who ask “how do you plan these trips?”
- Phase 2: outdoorsy van/car-camping families and couples who plan their own multi-state trips and don’t want a travel agent
- Phase 3: potentially monetizable as a freemium tool (see Business)
v0 · Shipping
One Trip Page
The Yosemite 2026 trip itinerary. Hand-built. Proves the format works.
v0.5 · Running
Cancellation Watcher
Daily 8 AM PT scheduled task in upgrade-hunt mode. Hunts 7 Tahoe-shore campgrounds (D.L. Bliss, Sugar Pine Point, Emerald Bay, Fallen Leaf, Meeks Bay, William Kent, Kaspian) for both-night openings.
v0.5.1 · Shipped May 25
Phone Push via Google Calendar
The watcher creates a Google Calendar event each morning with the result baked into the event title and a 0-minute popup reminder. Result lands on the user’s phone as a Calendar notification, no need to open Claude Desktop to see the daily status. Cron also aligned to 9 AM MDT (= 8 AM PT) for the user’s current Colorado timezone.
v0.6 · Shipping
Weather in Day Cards
Live high/low forecast for each day’s location from Open-Meteo on page load. When the date is too far in advance (beyond the 16-day forecast window) or already in the past, the chip shows a 5-year historical average for that date instead of a live feed.
v0.7 · Shipping
Direction-Aware Maps
Every find, hike, reservation, and roadside stop has a “🗺 Map” pill that opens turn-by-turn directions from the user’s current location, not just a pin.
v0.7 · Shipping
Collapsible Reservation Cards
Summary row shows campground name + map link. Expanding reveals confirmation #, GPS, driving directions, phone, and booking notes.
v0.7 · Shipping
Inline Per-Day Backups
Backup camp options live inside the day card they belong to (Tahoe backups on the first Tahoe day, Vegas backups on the first Vegas day, etc.). No separate backups section.
v0.7.1 · Shipped May 25
Per-Day Backups Rolled Out to All Unbooked Days
Every in-air day now has a collapsible “🔍 Backups & alternatives” panel: Day 1 Joe’s Valley (6 nearby options), Day 5 Oh! Ridge, and all 7 Plan B nights (Atlatl 2nd, Watchman ×3, Bryce ×2, Green River BLM). Locked days (Yosemite, Valley of Fire, Donner) deliberately skipped. Panels are uniform in style for consistent scanning.
v0.7 · Shipping
Trip Budget
Per-category totals and a single trip total (~$1,440, under $100/day) built on the real fuel prices paid, with a state-by-state diesel breakdown.
v0.9 · Shipped May 25
Packing List Tab with Sub-Tabs
A dedicated Packing tab in the top plan switcher. Three nested sub-tabs (🚐 Van / 👩🏻🦳 Mom / 🧑🏽 Teen) so shared gear and individual gear are separated. Per-sub-tab progress chips show counts (e.g. “5/16”). Items grouped by category (electronics, cooking, food prep + shopping, sleeping, sport footwear, climbing gear, toiletries, health, documents, van pre-departure). Every line is its own discrete checkbox, no comma-lists, so packing is one-pass. Checkbox state and last-viewed sub-tab persist in localStorage.
v0.9.1 · Shipped May 25
Food Section Built Around Real Meal Plan
The Packing tab includes a “🛒 Food Prep & Shopping” pack-section at the top of the Van sub-tab: pre-trip cook tasks (refried beans, taco-seasoned ground beef portioned into zip-locks), pantry inventory, grocery run. Fridge / Freezer / Dry sections rebuilt around the actual menu, bean burritos, egg burritos, tacos, veggie dogs, nachos, bag salad + ranch, tuna wraps, PB&Js, oatmeal, cereal. Each ingredient on its own line.
v0.10 · Shipped May 25
National Parks Color Palette
Every content callout color-coded by activity type for at-a-glance scanning: 🛣 roadside / scenic = sandstone gold (default), ♨ hot springs = warm copper, 🛶 water / paddleboard = lake teal, 🥾 hikes = sky blue, 🪨 climbing = cliff rust, 🌅 sunset / stargazing = deep night purple. Backups / alternates moved from tahoe blue to sage green so they don’t compete with hikes. Reservations stay forest green, to-dos stay amber. Same colors applied across every day card in both plans.
v0.10.1 · Shipped May 25
Climbing Outfitters & Guided Tour Listings
Added in-page listings for guided climbing options on relevant days: Yosemite Mountaineering School (the only authorized in-park guide service, Monday availability flagged) on Day 6, and three Bishop-area outfitters (Sierra Mountain Guides, Sierra Mountain Center, SMG Inyo Mountain Guides) on Day 9 with phone numbers and notes on top-rope vs. bouldering setup at Buttermilks, Owens River Gorge, and Pine Creek Canyon. Removed in the v0.12 rewrite, these outfitter listings are no longer on the current page (the bouldering stops themselves remain).
v0.10.2 · Shipped May 25
Wayfinder App Branding
Thin dark top bar on every trip page with the “Wayfinder” name (Fraunces serif, gold) linking back to the portfolio home, and a right-side link to the PRD. Matching footer near the bottom of the page with PRD + portfolio links. Reads as a proper tool rather than a one-off trip doc, and visitors can navigate back to context.
v0.11 · Shipped May 30
Geology Sections + Language Rules
Collapsible route geology cards on every day with notable formations, keyed to named milestones along the route. Formal itinerary language rule adopted across all day cards: no time-relative language (tonight/tomorrow), no anecdotal asides. Camp location boxes split from evening-activity boxes (fb-camp forest green vs. fb-night purple). Van compatibility criteria formalized for campsite selection.
v0.12 · Shipped June 7
Rewritten as Taken + Map & Park-Card Overhaul
Collapsed to a single 15-day plan (multi-plan tabs retired) and rewritten to the route actually driven: Crane Flat → Buttermilks → the Area 51 / Fort Amargosa Punjabi Dhaba run → Pahrump (K7 B&B) → REI Vegas → Sand Hollow → Zion Narrows → Red Canyon Village → Bryce → Capitol Reef (Hickman Bridge) → Moab → home via I-70 & Glenwood. New hand-drawn SVG state-outline map (CA/NV/UT/CO + AZ corner) replacing the block map, every stop at true geographic position, one uniform label size, and a ★ ranger-badge marker on each of the six national parks. An “Also on the Table” idea card added to every national park (extra hikes plus a roadside / hot-springs / bouldering column). Roadside attractions, hot springs, and bouldering surfaced throughout (Rhyolite + Goldwell, Ash Meadows, Buckeye + Travertine springs, Big Bend + Joe’s Valley boulders, South Canyon springs). Moab night leads with cool La Sal Mountains camping (Warner / Oowah Lakes) plus live mountain-vs-town forecast chips, Inca Inn as the room backup. Budget simplified to per-category totals and a single trip total (~$1,440, under $100/day) using the real fuel prices paid. Every day-card title given a consistent icon. Page renamed to index.html for a clean /wayfinder/ URL.
v0.13 · Shipped June 7
Van Drive Chips + No-Drive Days
Every drive-time pill now leads with a 🚐 van glyph so the transit row reads at a glance, matching the weather chip’s prominence. True rest days swap the plain rest tag for a celebratory “🎉 No-drive day” pill (its own gradient-bordered class), currently the second Tahoe day, the Vernal Fall shuttle day, and the Bryce full day.
v0.14 · Shipped June 7
Per-Stop Site Logistics + Clearance
A compact logistics box on each overnight stop, water fill, showers, fire/burn-ban status (incl. the live Red Flag Warning at Bryce), cell + Starlink sky view, bear rules, and dog-on-trail restrictions, plus a one-line vehicle-clearance check on the Zion tunnel day confirming the Sprinter fits.
v0.15 · Shipped June 7
Live Fire-Restriction Links
Each overnight’s fire line carries a one-tap link straight to the authoritative agency page for that jurisdiction, BLM Upper Colorado River District, the relevant NPS park (Great Basin, Yosemite, Bryce), the Lake Tahoe Basin USFS unit, and Utah Fire Info for the Dixie / Manti-La Sal forests. No single fire API spans every land manager, so the link routes to whoever actually sets the rules for the site, with the source named in a hover title.
v0.16 · Shipped June 7
Unified Overnight Cards
The standalone slate logistics box was merged into the green campsite/lodging box, so each night is one card instead of two-plus. The site name + map sit on top, the logistics stay persistent right below, fire first (with the inline live-restriction link), then water, showers, cell/Starlink, bears, dogs, and the booking confirmation plus every backup camp fold into a single collapsible drawer. Day 1’s three camp options collapse to one main goal + backups; booked nights keep their confirmation grid in the drawer. One green box per night, logistics always visible, everything else one tap away.
v0.17 · Shipped June 7
Map: Sleep-Color Rule + Stealth Springs + Van Start
The map’s color logic is now a single rule: where you sleep that night sets the day’s color, and that color is shared by the itinerary’s left day-bar, the overnight marker, and every day-stop that feeds into that night, so Sand Hollow, Zion, and Panguitch all read as one plum Day 11, both Bryce nights match, and Capitol Reef shares Moab’s color. The missing hot-springs day stops were added so all soaks appear (Bridgeport, Glenwood), but labeled by city only (Austin, Bridgeport, Glenwood) to keep the springs low-key and uncluttered; the full detail is one click away on the day card. The Golden start/end marker changed from a house to a 🚐 van icon so the map reads as a trip endpoint, not a home address.
v0.18 · Shipped June 7
Yosemite Rewritten As-Taken
The three valley days were reordered to what actually happened: Day 8 is the Mist Trail to Vernal Fall plus watching El Cap climbers from the meadow at dusk; the last day (Day 9) combines Glacier Point + Tunnel View with the valley falls (Lower Yosemite, Bridalveil) and a Merced River swim before the long drive east. Yosemite bouldering was removed.
v0.19 · Shipped June 7
Simplified Top Nav
The dark route strip (the horizontal list of place names below the map) was removed, it duplicated what the map and the day-jump bar already show. The day-jump bar stays as the single top index: “Day N · date” pills, now each carrying a small dot in the day’s sleep-where-you-are color so the jump bar, the map circles, and the itinerary left-bars all read as one color system.
v1 · Planned
Trip Generator
Questionnaire in, trip page out. Personalized to interests, accommodations, budget.
v1 · Planned
Link Validation Before Publish
Every external link in a generated trip, trailheads, campgrounds, reservations, fire-restriction pages, weather, businesses, is checked for a live response before the page ships, then re-checked on a schedule afterward. Anything dead or redirecting is flagged and swapped for the authoritative parent page (a retired NPS trail page falls back to that park’s trail guide or home page). Lesson from the Yosemite trip: park agencies retire individual trail/feature pages often, so the validator prefers stable hub or guide URLs over deep links. Goal: no one drives all day and opens a broken link.
v2 · Later
Live Data
Real-time campground availability, road conditions, collaborator features.
v3 · Concept
Audience Profiles
Describe who’s actually in the van and check what each of them cares about. The generator balances the trip across profiles instead of optimizing for one person.
v3 · Concept
Kids’ Mode · AR “I Spy”
A kid-facing companion view that turns transit hours into a scavenger hunt: hold a phone up to a named peak, formation, or pronghorn and the AR overlay confirms the find. Built from the same route + geology + wildlife data.
v0 · The Yosemite Trip Page (current)
A single HTML page covering a 15-day family van trip from Golden, CO out to Yosemite NP and looping home through the Eastern Sierra, Pahrump, Zion, Bryce, Capitol Reef, and Moab. Hand-built and updated continuously as plans evolve, now reflecting the route as actually driven.
What’s on the page
- Sticky forest-green hero (NPS-inspired palette: forest #2E5E2E, sage cream, muted gold, plum and terra accents) and sticky section nav, both stay pinned as you scroll
- Route map: hand-drawn SVG state-outline map (CA/NV/UT/CO + AZ corner) with a single-color forest-green loop, numbered stops at true geographic position, state borders, mountain ranges, lakes, highways labelled with shield icons, and a ★ ranger-badge marker on each of the six national parks. A small legend distinguishes overnight stops (solid circle) from day visits (dashed), and a stats strip below the map shows ~3,000 mi / 15 days / 5 states / 6 national parks
- Interactive map markers: each numbered stop on the SVG map is clickable and smooth-scrolls to that day’s card, briefly outlining it in forest green
- Sticky day-jump bar: a horizontally-scrolling “Jump: Day 1 · May 26 …” pill row, generated in JS, that anchors to each of the 15 day cards; each pill carries a dot in the day’s sleep-where-you-are color (v0.19), matching the map circles and itinerary left-bars
- Day-by-day cards, each with: day number, weekday, date, an icon-led title, subtitle (route summary), tag pills (drive time, weather, camp, booking status), narrative description, and structured find-boxes for that day’s stops
- Color-coded tag pills in every day card: drive time (gray, 🚐 van glyph), weather (blue/gold), camp (cream), free camping (green), needs-booking (red), rest-day (sage), hike (light blue), and a celebratory “🎉 No-drive day” pill on true rest days
- Fuel-strategy boxes: prominent red fuel callouts on the long legs flag the “fuel deserts” ahead (e.g. Delta → Ely ~150 mi, the central-Nevada stretches) and name the towns to top off in, so the driver never gets caught between stations
- “Also on the Table” idea cards: a collapsible multi-column panel on each national park with extra hikes plus a roadside / hot-springs / bouldering column, for travelers who want options beyond the planned day
- Find-boxes categorize each day’s stops by type: ♨ hot springs, 🪨 bouldering, 🧗 sport climbing, 🚴 mountain biking, 🛶 paddleboard, hike, scenic viewpoint, roadside find
- Unified overnight cards (v0.16): one green box per night carrying the site name + map, a persistent logistics list (fire-first with a live-restriction link, then water, showers, cell/Starlink, bears, dogs), and a single collapsible drawer holding the booking details (confirmation number, dates, site, cost, prose directions, Google + Apple Maps, GPS) and any backup camps. Replaces the older separate reservation card + standalone logistics box + sage backup card
- Status icons on the overnight card (✓ paid / ⏳ pending / ⚠ at-risk) so a top-of-page scan shows which nights are locked and which still need booking
- Direction-aware “🗺 Map” pills on every find, hike, reservation, and roadside stop, opens turn-by-turn directions from the user’s current location, not just a pin
- Chronological ordering within each day: items in each day card are arranged in the driving order the traveler would encounter them, so a left-to-right scan equals the day’s route
- Priorities surfaced across the route: hot springs, bouldering, hikes, and paddleboarding are tagged and appear on every day they’re reachable, not just hand-picked destinations
- Budget block with state-by-state diesel breakdown (miles, gallons, $/gal estimate, cost), camping fees split by paid vs remaining, food rollup, extras line items, and a single bottom-line trip total (~$1,440, under $100/day) on the real fuel prices paid
- Live weather chip on each day card with three states: live Open-Meteo forecast inside 16-day window, 5-year historical-average estimate beyond it, neutral “⛅ , “ if both fail
- Anonymized personas (“Teen” / “Mom”) so the page is shareable without exposing names or the kid’s whereabouts
- Privacy-stripped prose: no flight references, no kid-alone-in-Vegas details, no wedding work-shoot references, so the page reads as a shareable generic route
- Footer cross-links back to portfolio home, the PRD, and the cancellation watcher
Behind-the-scenes details (the things you don’t notice unless you read this PRD)
- Static HTML, no backend. The whole page is a single .html file served from GitHub Pages. The only network calls go to Open-Meteo for weather. There’s no database, no auth, no server-side rendering, no build step. Edits happen in the source file directly.
- .nojekyll flag. A zero-byte
.nojekyllfile at the repo root tells GitHub Pages to skip Jekyll processing, which would otherwise reject some HTML/CSS patterns used by the page. - Custom CSS variables. All colors are CSS custom properties at the top of the file (
--cream,--forest,--tahoe,--terra,--return,--gold,--climb,--alert, each with a paired-lighttint), so the palette can be retuned in one place. The NPS forest-green palette was iterated multiple times during build to reduce yellow/tan overload. - Fraunces + DM Sans from Google Fonts preconnected at the head of the file for fast load. Fraunces handles headings (serif with optical-size axis), DM Sans handles body and UI.
- Weather chips are progressively enhanced. Chips render with a “⛅ loading…” placeholder, then JavaScript replaces each one with live data as Open-Meteo responds. If JS is disabled, the page still renders cleanly with the placeholder.
- Weather staggering. Fetches are spaced 80ms apart with
setTimeoutso the page doesn’t fire 20 parallel requests at Open-Meteo when it loads. - Archive API fallback. When the forecast endpoint returns no data (date is past the 16-day window), the chip silently falls back to the archive endpoint and fetches the same MM-DD across 5 past years. Both endpoints are free, keyless, and CORS-enabled.
- Map links use the Google Maps URL scheme. Every map pill is
https://www.google.com/maps/dir/?api=1&destination=<urlencoded-place-name>. On a phone this deep-links into the Google Maps app; on desktop it opens the browser map view with directions pre-populated. - Reservation cards include both Google and Apple Maps links in the expanded “Getting There” block, plus raw GPS coordinates for travelers who prefer either provider or use a standalone GPS unit.
- Status icon system. ✓ for paid/confirmed, ⏳ for needs-booking, ⚠ for at-risk. Used on reservation summaries so a top-of-page scan tells you which days are locked and which still need attention.
- Collapsible elements use native HTML.
<details>/<summary>, no JS framework, no accessibility hacks, keyboard-navigable by default, expanded state preserved by the browser on print. - Hand-drawn SVG maps. No tile server, no Mapbox token, no internet required to display the route. State borders, mountain ranges, lakes, and highways are individually drawn paths; markers are
<circle>elements with text labels. Bigger labels for legibility on phones. - Print-friendly. All
<details>elements respectopenattribute when set, so a “print this page” workflow can pre-expand everything for offline use.
Companion automation
- Daily 8 AM cancellation watcher (v0.5) runs as a scheduled task in upgrade-hunt mode for target campgrounds, see the dedicated section below
- Live weather + climatology fallback means the page gets more accurate over time without any code changes, as trip dates roll into the 16-day window, estimate chips silently upgrade to live forecasts
Live link: Yosemite Road Trip 2026 →
v0.8 · Map Color-Coding
The SVG map markers carry color so a reader can connect each stop to its day. The route line itself stays a single forest-green loop; the stops carry the color. (v0.19: the original dark route strip that paired with the map was removed; the day-jump bar now carries the matching dot colors instead.)
What the shipped map encodes
- Overnight vs. day visit: a solid circle marks a stop where you sleep, a dashed circle marks a day visit. A small legend on the map spells out the distinction.
- Sleep-where-you-are color rule (v0.17): where you sleep that night sets the color, and that one color is shared by the itinerary’s left day-bar, the night’s overnight marker, and every day-stop feeding into it. So Sand Hollow + Zion + Panguitch are one plum Day 11, both Bryce nights match, Capitol Reef shares Moab’s color, and Pahrump reads distinct from the Day 11 group. A reader can trace any dot back to the day it belongs to by color alone.
- Stealth hot-springs stops (v0.17): every soak now appears on the map (Austin, Bridgeport, Glenwood) but is labeled by city only, not “X Hot Springs”, less clutter, and the springs stay low-key. Clicking the circle still scrolls to the day card where the full detail lives.
- Van start/end (v0.17): the Golden endpoint is a 🚐 van icon rather than a house, so the map reads as where the trip begins and ends, not a home address.
- ★ ranger badges: a gold star prefixes each of the six national parks (Great Basin, Yosemite, Zion, Bryce, Capitol Reef, Arches), so the headline destinations read instantly.
- Day-jump dot colors (v0.19): the top day-jump bar carries the same sleep-where-you-are dot color as the map circles and the itinerary left-bars, functioning as a single visual index. (The older dark route strip that listed place names was removed as redundant.)
- Stats strip directly under the map: ~3,000 mi · 15 days · 5 states · 6 national parks.
In v1
Region coloring is automatic in the generator. The route is segmented into 3–5 regions based on geography (climate zone, elevation band, state grouping, or scenic corridor, whichever applies). Each region gets a palette slot, the strip and map share that mapping, and the legend gets generated from the regions list.
v0.10 · Camp Color Split (fb-camp vs fb-night)
The original v0.10 color system used fb-night (deep night purple) for both evening activities and camping location boxes, which conflicted with the established convention that camping and reservations use forest green. The fix splits these into two distinct classes:
- fb-camp (forest green
#2E5E2E/#DCF0DB): camping location boxes, where you sleep, whether reservable or dispersed. Matches the green used on reservation cards, so the visual system is consistent: if it’s green, it’s where you’re sleeping. - fb-night (deep night purple
#5A3E7A/#EDE5F5): evening activities only, astronomy programs, sunset rim walks, stargazing. Not for camping locations.
fb-camp. Any find-box that describes a time-of-day evening activity (astronomy, sunset, stargazing) uses fb-night. Never mix them.
v0.10 · Campsite Selection Criteria (van compatibility)
The Yosemite 2026 trip uses a tall Sprinter van. Several campsite-selection decisions made during this trip are worth codifying as generator criteria for v1.
Van compatibility checklist
- Max vehicle length ≥ 24 ft: Sprinter vans are typically 19–22 ft. Sites with an 18 ft max are too tight. Default filter: 24 ft minimum for any van trip.
- No “tent-only” policy that prohibits vehicle sleeping: Recreation.gov labels many sites “Tent Only Nonelectric” (TONE) as a fee/hookup category, not a literal prohibition on van sleeping. A TONE label is acceptable if the site has no posted “no sleeping in vehicle” rule. Verify on the individual site page.
- Drive-in access: No hike-in sites, walk-in sites, or boat-in sites. Must be vehicle-accessible to the pad.
- Driveway grade note: Recreation.gov flags “severe driveway grade” on some sites. Not a blocker for a van, but worth surfacing in the itinerary so the driver is aware.
- Paved vs. gravel pad: Both are acceptable; note which in the find-box so the user sets expectations for leveling.
- Back-in vs. pull-through: Pull-through preferred for long vans but not required. Note in find-box.
v0.11 · Route Geology Sections
Each driving day in the Yosemite 2026 trip includes a collapsible geology section covering the rock formations, geologic history, and notable features encountered along that day’s route. These sections are collapsed by default and aimed at curious readers who want depth without cluttering the main itinerary.
Format
- Collapsed by default using native
<details> / <summary> - Summary line shows a mountain icon (🗻) and the section title (“Geology of X, route via Y”)
- Body uses
.geo-bodywith a series of<p>elements, each opening with a<span class=”geo-mile”>milestone label (the named road, pass, or location where the formation is visible) - Content covers formation name and age, geologic process, visual cue the traveler can see from the road
- Styled with a subtle left-border, distinct from find-boxes so it reads as supplementary rather than actionable
Coverage in Yosemite 2026 trip
Geology cards run on the 11 driving days; the four rest days (the second Tahoe day and the three Yosemite valley days) have none.
- Day 1 (Golden → Rabbit Valley): Front Range Precambrian granite, Glenwood Canyon limestone, Grand Mesa basalt, Book Cliffs, edge of the Colorado Plateau
- Day 2 (Rabbit Valley → Great Basin): San Rafael Swell anticline, Goblin Valley Entrada Sandstone, Sevier Valley (Plateau→Basin boundary), Basin and Range fault-blocks, Wheeler Peak
- Day 3 (Great Basin NP): Lehman Caves (karst), Snake Range uplift, Alpine Lakes glacial tarns, bristlecone pines
- Day 4 (US-50 across Nevada → Sierra → Tahoe): Basin and Range, Ely/Eureka mining districts, Sand Mountain & Lake Lahontan, Carson Sink, Sierra Nevada batholith, Tahoe graben
- Day 6 (Tahoe → US-395 → Tioga Pass → Yosemite): Sierra east-face fault scarp, Bridgeport graben, Mono Craters & Mono Lake tufa, Tioga Pass batholith granite
- Day 10 (Tioga Pass → Owens Valley → Amargosa Desert): Sierra batholith domes, Long Valley Caldera & Bishop Tuff, Owens Valley rift, Nevada Basin and Range volcanics, Ash Meadows “fossil water” aquifer
- Day 11 (Virgin River Gorge → Sand Hollow → Zion → US-89): eastern Basin and Range, Virgin River Gorge Paleozoic limestone, Navajo Sandstone (Sand Hollow + Zion), Grand Staircase climb
- Day 12 (Red Canyon → Bryce): Claron Formation (Red Canyon arches), top step of the Grand Staircase, Bryce amphitheater freeze-thaw
- Day 13 (Bryce full day): Claron Formation detail, hoodoo formation mechanics, iron/manganese coloring
- Day 14 (Bryce → Capitol Reef → San Rafael Swell → Moab): Aquarius Plateau basalt, Waterpocket Fold, San Rafael Swell, Moab salt anticlines
- Day 15 (Moab → Glenwood Canyon → Front Range): Arches Entrada Sandstone, Book Cliffs, Glenwood Canyon, Eisenhower Tunnel / Continental Divide, Dakota Hogback
In v1
The generator pulls geology content from a curated database keyed to named formations, passes, and corridors. Any route leg passing through a documented formation gets a geology section auto-generated for that day card. The traveler can toggle geology sections on or off in trip preferences.
v0.11 · Formal Itinerary Language Rule
The Yosemite 2026 trip page functions as a historical itinerary document, not a chat log. All prose in day cards, find-boxes, and fuel notes must follow formal itinerary conventions.
Prohibited language
- Time-relative references: “tonight,” “tomorrow,” “this morning,” “this afternoon,” “this evening,” “yesterday.” These become meaningless outside the moment and look amateurish in a document reviewed before, during, and after the trip.
- Anecdotal or chatty asides: “no stress,” “you’ve got this,” “one of the best in the state,” “worth the detour,” “trust me on this one.” The reader can evaluate quality from the facts; editorial cheerleading isn’t needed.
- First-person voice in itinerary prose: The document describes what happens, not what “I” recommend.
Preferred substitutions
- “tonight” → the specific camp name, or “Day [N] overnight”
- “tomorrow” → “Day [N]” or “the following day”
- “this morning” → the specific activity name, or omit entirely
- “before leaving tomorrow” → “before departing” or “prior to departure”
- Evening activity labels: “Evening ·” prefix instead of “Tonight ·”
- Camp location labels: “Camp ·” prefix instead of “Tonight’s Camp ·”
v0.9 · Packing List Tab (upcoming)
A real packing list is its own thing. Trip prep happens days or weeks before departure, in a different headspace than route planning, and the items are different per vehicle, per season, per traveler. The trip page should carry a packing list as a peer of Route / Itinerary / Budget, a fourth tab in the sticky-top nav, with the same persistence and editability as the other sections.
v0.8 stopgap: inline pre-trip checklist
Until the proper tab ships, the trip page has a collapsible “Before you leave” checklist near the top, single-column on phones, two-column on desktop. Items are flat HTML checkboxes (visual only, no state persistence). It’s a temporary holding spot, not a feature.
v0.9 spec
- Top-level tab alongside Route / Itinerary / Budget. Selection persists per-trip, not globally.
- Items grouped by category: Cold Storage, Power, Shelter, Cooking, Water, Camp Comfort, Tech, Documents, Toiletries, First Aid, Vehicle, Recreation Gear (paddleboard, bikes, hammocks, climbing gear, etc.)
- Item state stored in localStorage per item, checking off persists across reloads, resets when you start a new trip
- “Pre-trip” subset for items that need preparation before departure (freeze ice packs, refill propane, pick up Starlink at Walmart, refill water jugs, inventory cooking gear). Surfaces near the top of the list, expanded by default in the final week before the trip.
- Reusable templates per vehicle profile (van, car-camping, RV) and per trip type (desert summer, mountain shoulder season, etc.), saves rebuilding the list for every trip
- Item annotations: small inline note per item (e.g. “Goal Zero, full charge 24 hrs before, top off in van for first leg”)
- External links on items where useful, Dometic cooler model page, Goal Zero, gear shop, etc.
- Print-friendly view for the final pre-departure run-through
Reference set captured during Yosemite trip prep
Items added to the v0.8 stopgap checklist for this trip, useful as the v0.9 template seed:
- Cold storage: soft ice packs frozen at home, Dometic 12V cooler/freezer loaded
- Power: Goal Zero power station charged, Starlink Mini (Walmart pickup), battery fan, phone/laptop chargers
- Tech: iPad, laptop, cables, headphones
- Cooking + fuel: propane refill, inventory stove fuel/pans/utensils, dish kit
- Camp comfort: teen’s mattress, hammocks, chairs, sleeping bags, pillows
- Fire: small metal fire pit, pellets / fuel
- Water + sanitation: refill all water jugs, compost toilet shavings
- Documents: America the Beautiful pass, Access pass, reservation confirmation printouts (in case offline at camp)
- Health: first aid kit, sunscreen, bug spray, prescription meds
v0.7 · Direction-Aware Maps
Every entry on the page that names a place, find, hike, reservation card, roadside stop, hot spring, climb area, paddleboard launch, has a “🗺 Map” pill next to the name. Tapping it opens Google Maps with that place as the destination, ready to navigate from the user’s current location.
Why this matters
A pin on a map without a route is useful at home, useless on the road. The whole point of a trip page is that it works while you’re driving. Direction-aware links mean from the parking lot of one stop to the next stop is one tap, not three.
How it works in v0
- Every map pill uses the Google Maps URL scheme
maps/dir/?api=1&destination=<place> - The place name is URL-encoded so multi-word destinations, special characters, and apostrophes don’t break the link
- Reservation cards also include a parallel Apple Maps link and the raw GPS coordinates in the directions block for travelers who prefer either
- On a phone, the link opens directly in the Google Maps app; on desktop, it opens in the browser map view with directions already populated
v0.7 · Collapsible Reservation Cards
Booked campsites and lodging used to live in a separate “Reservations” section at the bottom of the page. That meant scrolling away from the day you were planning to look up the confirmation number, then scrolling back. The new pattern keeps each reservation inside the day it belongs to, collapsed by default.
Pattern
- Each reservation is a
<details>element, collapsed shows only the campground name and the “🗺 Map” directions link - Expanding reveals: confirmation number, check-in/check-out, site number, what was paid, phone number, and a “Getting There” block with prose directions, parallel Google + Apple Maps links, and GPS coordinates
- Status icons in the summary line: ✓ for paid/confirmed, ⏳ for needs-booking, ⚠ for at-risk
- Cards live inside the day card they belong to, no separate Reservations section, no Backups section, no scrolling away from the current day
v0.7 · Inline Per-Day Backups
The original page had a single “Backups” section at the bottom listing fallback campgrounds for the whole trip. Useful at planning time, useless once you’re driving because the backup for Tahoe and the backup for Vegas are sitting in the same list. The new pattern moves each region’s backups into the first day of that region, as a collapsed details card.
Pattern
- Each region (Tahoe, June Lake, Yosemite, Vegas, Zion, Bryce, Highline Lake) gets a backup card on its first day
- Collapsed: a one-line preview lists the alternate names
- Expanded: each alternate has a name, link to its booking page, “🗺 Map” directions pill, and a one-line note on what’s distinctive about it (price, proximity to the lake, hookups, BLM-free, etc.)
- Distinct styling (sage border, indented) so backups are visibly different from the primary reservation card without competing for attention
v0.7 · Trip Budget
The page carries one budget for the trip as taken: total mileage, total diesel cost, a state-by-state breakdown, food rollup, lodging, and extras, on the real fuel prices paid. It resolves to per-category totals and a single trip total (~$1,440, under $100/day).
What the budget includes
- Diesel total broken down by state with miles, gallons, $/gal estimate, and cost, visibly tabular, so the user can sanity-check the assumptions
- Camping/lodging fees split into “already paid” and “remaining to pay”
- Food estimate based on day count and a per-day groceries-vs-restaurants assumption
- Extras: firewood, tourist fees, optional climbing day or guide service
- A single bottom-line “out of pocket remaining” number
v0.5 · The Cancellation Watcher (running daily)
Memorial Day weekend, the dream Tahoe campsites (D.L. Bliss, Emerald Bay, Nevada Beach) were all booked out months in advance. The fallback (Donner Memorial) works, but Tahoe-shore sites do get cancelled. The cancellation watcher hunts for those openings on a schedule so I don’t have to.
Why 8 AM
ReserveCalifornia releases cancelled sites at 8 AM PT each morning. Recreation.gov releases overnight cancellations around the same time. Running at 8 AM Phoenix (which is 8 AM PT during the relevant months since Arizona doesn’t do DST) catches both feeds while the sites are freshest.
Configurable targets
- List of specific campgrounds or sites to watch (D.L. Bliss SP, Fallen Leaf Site 142, Emerald Bay SP for the Yosemite trip)
- Date range and minimum number of consecutive nights
- Notification preferences (notify only on openings, notify always)
- Stop date (auto-disable after the trip starts)
What reservation systems the watcher hits
The Tahoe-shore target list spans three booking platforms:
- ReserveCalifornia, California State Parks. D.L. Bliss SP, Sugar Pine Point SP, Emerald Bay SP, Donner Memorial SP.
- recreation.gov, federal lands, both NPS and USFS. Used by Yosemite’s frontcountry campgrounds (Crane Flat, Hodgdon Meadow, Upper Pines, and so on) and Tahoe-area USFS campgrounds (Fallen Leaf, Meeks Bay, William Kent, Kaspian). National parks and national forests run on the same platform.
- ReserveNevada, Nevada State Parks. Used for Valley of Fire and a couple other targets that get scoped into longer Plan B trips.
What sits behind JavaScript (and what doesn’t)
Every one of these platforms renders the actual day-by-day availability grid through client-side JavaScript. If you fetch the public campground page as raw HTML, you get a description, photos, the FCFS-or-reservable status, and a list of all sites, but not the calendar showing what’s open on which night. The watcher works because each platform also exposes an undocumented JSON endpoint that returns the same availability data the JS widget would render. The watcher calls those endpoints directly, parses the response, and checks for openings. No scraping or browser automation involved.
The bar isn’t “can the agent see this page,” it’s “does the platform expose a JSON endpoint I can hit reliably.” All three platforms do.
National parks and national forests use the same platform
Worth saying out loud since it surprised me: NPS campgrounds and USFS campgrounds live on the same booking platform (recreation.gov). They share the same HTML, the same JS-rendered availability widget, and the same JSON endpoints. The watcher can target either kind interchangeably. The distinction that matters here isn’t federal agency, it’s the booking platform under the hood.
What an in-session Cowork assistant can and can’t see
Worth documenting because it confused me when I asked Claude inside Cowork to check live availability for Crane Flat. Expect this:
- Fetching the public campground page works, but the response only includes static marketing content (description, photos, list of sites). The availability calendar requires the JS to run, which web_fetch does not do. Often the static fallback says something like “Crane Flat Campground is closed for the winter” even when the campground is actively taking reservations, because that’s the off-season default text the JS widget would otherwise overwrite at load time.
- Fetching the JSON availability endpoint directly is blocked. Cowork’s web_fetch runs through a proxy with a domain allowlist, and the rec.gov, ReserveCalifornia, and ReserveNevada API endpoints aren’t on it. The proxy returns a 403 before the request ever reaches the platform.
- The scheduled task runs on different infrastructure with different network access, which is why the watcher itself can hit those endpoints even though the interactive assistant can’t.
So the honest summary: an in-session assistant can confirm a campground exists, link to its rec.gov or ReserveCalifornia page, describe its facilities, and explain how the platform works. It can’t check live availability without help from the scheduled watcher.
Manual “search now” button (planned)
The 8 AM cron is reliable but rigid. Cancellations happen at any hour. The plan is a button on the trip page (or on the future Wayfinder home page) that triggers the same search on demand, returns results inline within ~30 seconds, and lets the user spot-check any time of day.
Autofill booking (planned)
Finding a cancellation is only half the race, the other half is filling out the reservation form before the site is gone again, and the quick-grab openings the watcher surfaces are exactly where speed matters most. The plan is to pre-populate the booking page so the only thing left for the user is to confirm and pay.
- Stored traveler + vehicle profile fills the repetitive fields automatically: party size, number of pets, vehicle type, trailer/tent and equipment, rig length, and the billing address. This is the same profile that drives the clearance pre-check and the site-logistics box, entered once and reused.
- Access Pass applied for the 50% federal camping-fee discount. The pass number is treated as sensitive, entered at booking time (or stored only if the user explicitly opts in), not baked into the trip files.
- Runs in the user’s browser on the live recreation.gov / ReserveCalifornia page while they’re logged into their own account, the reservation endpoints can’t be posted to directly from a Wayfinder session, so the autofill is browser-driven, not server-side.
- Stops before payment. Wayfinder never enters card details or clicks the final purchase button, it hands back a fully filled form sitting on the review/pay step. One tap from the user completes it.
- Availability still rules. Autofill makes the user faster at the moment of truth but can’t hold a site; if the opening is gone at confirm-time, it’s gone. The point is to shave the form-filling minutes that lose competitive sites.
v0.6 · Weather Feed in Day Cards
Each day card shows a high/low forecast right next to the drive time and camp tag. Live data from a reliable weather source, fetched in the browser when the page loads. No backend.
Data source
Open-Meteo, free, no API key required, CORS-enabled, 16-day forecast window. Endpoint takes lat/long plus a date range and returns daily max/min temperatures. Reliable, well-documented, generous limits for personal use.
How it works in v0
- Each day card has GPS coordinates and a date baked into the HTML
- JavaScript at the bottom of the page reads those, fires one fetch per day card to Open-Meteo’s forecast endpoint, and injects the high/low into the card
- If the trip date is inside the 16-day forecast window, the chip shows a live forecast with a sun/cloud/rain icon and precipitation probability when above 30%
- If the trip date is more than 16 days out, the chip automatically falls back to Open-Meteo’s archive API, fetches the same month/day across the past 5 years (2020–2024), averages the highs and lows, and displays an estimate like ≈ 78° / 52° est with a dashed gold border and italic text to visually flag it as climatology rather than a real forecast
- If the trip date is already in the past, the chip skips the live forecast entirely and goes straight to the 5-year climatology estimate, relevant now that the page doubles as a trip record after the fact
- If both the forecast and the archive fail (offline at camp, API down), the chip falls to a neutral “⛅ , “ rather than showing wrong info
- Dual mountain-vs-town chips on the Moab day: two side-by-side forecasts inside the La Sal camping find-box, comparing the cool high-elevation La Sal Mountains camp against Moab town temps, so the heat trade-off of camping up high is visible at a glance
In v1
The generator builds the weather chips automatically as part of each day card. Source of truth for coordinates is the campground database, so no manual lat/long entry needed.
v0.14 · Per-Stop Site Logistics & Vehicle Clearance
The questions that actually cause stress on the road aren’t about geology, they’re “can I fill water here, is there a shower, can I have a fire tonight, will Starlink work under these trees, do I need to bear-box everything, can the dog come on this trail, and will the van even fit through that tunnel.” v0.14 answers them up front: a compact logistics box on the first night of each stop, plus a one-line clearance check where it matters.
The site-logistics box
The persistent logistics lines on each overnight card show only what applies (no “N/A” clutter):
- 💧 Water, whether potable fill is available. Every NPS / state-park campground on this route has it; flagged “none, carry in” at dispersed BLM like Rabbit Valley, where it matters most.
- 🚿 Showers, an explicit yes/no. On this trip only D.L. Bliss (coin showers), Red Canyon Village RV park, and the Inca Inn motel have them; the NPS campgrounds don’t.
- 🔥 Fire / burn ban, current fire status and managing agency, with red-flag or stage restrictions called out. Example: the Red Flag Warning in effect at Bryce during the stay, campfires normally allowed there, but stove-only while the warning holds.
- 📶 Cell / Starlink, likely cell coverage plus a Starlink sky-view note. Open desert (Rabbit Valley, Pahrump) is clear; heavy conifer cover (Upper Lehman at 7,500 ft, D.L. Bliss, Crane Flat) is obstructed and may need repositioning.
- 🐻 Bears, only where it matters. Severe at Tahoe (box everything, the bears break into vehicles), active at Yosemite (use the food locker; a hard-sided van is fine with windows up). Omitted where bears aren’t a concern.
- 🐕 Dogs, trail restrictions where they exist: no dogs on trails at Great Basin, Yosemite, or Arches; Bryce limits dogs to the paved Rim Trail; the Rubicon Trail at Tahoe bans them.
Vehicle clearance pre-check
The real stress point on this trip was the Zion–Mt. Carmel tunnel: a wall of vehicle-size warning signs on the approach with no easy way, mid-drive, to know whether the van cleared. The clearance box settles it in advance, it states the restriction (11’4” tall / 7’10” wide / 35’9” long), the van’s actual dimensions (2016 Sprinter 2500 144” high roof: 8’11” × 6’8” × 19’6”), and the verdict: clear on every dimension, no permit. It also notes the June 7, 2026 rule change (Zion discontinued oversize tunnel permits), context that doesn’t affect this van but matters for the generator.
In v1
All of this is generated, not hand-entered. The user stores a vehicle profile once, height, width, length, weight, or just pick a known model (“2016 Sprinter 2500 144 high roof”) and the tool fills the dimensions, and the generator auto-checks every tunnel, low-clearance underpass, and length-limited road on the route, flagging anything that needs a permit or a detour before departure. Site-services fields (water, showers, dump station, hookups, bear storage, dog rules, cell + Starlink sky view) live on each stop in the database and surface as the same logistics box. The preferences form carries matching checkboxes so a traveler hides what they don’t need: this user turns off dump stations (composting toilet) and the “can I sleep here?” overnight-legality layer (books only BLM + established campgrounds), while a Walmart-overnighting RVer would turn both on.
v1 · The Generator (planned)
The user answers a questionnaire. The tool produces a trip page in the v0 format, populated with their actual data, downloadable as HTML or hosted on the user’s account.
Input questionnaire
Trip basics
- Start and end city
- Dates (or duration plus rough departure window)
- Number of travelers, ages, anyone with mobility considerations
- Vehicle and MPG (for fuel budgeting)
- Pace preference: sprint, balanced, linger
Comfort & climate constraints
- Max overnight low temperature (in the v0 Yosemite trip, the constraint was “no overnight lows above 70°F”, the generator filtered for elevation accordingly, all chosen camps sit between 6,200 and 7,600 ft so they cool off properly)
- Max daytime high temperature (good for desert-route trips in summer)
- Avoid heavy rain probability windows? (use historical climate data + forecast when close to trip date)
- Wind sensitivity (paddleboard days especially)
- Elevation limits (some travelers do better below 8,000 ft)
- Acceptable smoke / fire-season risk windows
Interests (multi-select, granular)
- Rock climbing: sport, trad, bouldering, top-rope, multi-pitch (each toggleable, each with grade-range slider, V0-V13 for boulder, 5.6-5.14 for roped)
- Mountain biking: XC, trail, enduro, downhill, gravel, bikepacking (each toggleable, each with skill level: beginner / intermediate / advanced / expert)
- Hiking: casual nature walks, day hikes under 5 miles, half-day hikes 5-10 miles, all-day hikes 10+ miles, peak-bagging, backpacking overnights
- Hot springs: free natural primitive pools, free natural with some development, paid resort soaks, hike-in only, drive-up
- Water sports: paddleboard (flatwater), paddleboard (river), kayak (flatwater), kayak (whitewater), swimming beaches, river floats, surfing, fishing (fly / spin / lake / sea)
- Snow sports: hot springs in snow, snowshoe, backcountry ski, downhill, nordic, sled hills for kids
- Roadside attractions: ghost towns, kitschy weird stuff (giant fiberglass things, world’s largest X), alien lore, UFO museums, historic sites, abandoned places, Atlas Obscura entries
- Photography: golden hour landscape, astrophotography / dark sky, urban / street, wildlife
- Geology & natural wonders: slot canyons, hoodoos, arches, geysers, dunes, lava flows, caves, fossils, waterfalls, glaciers
- Wildlife: bird-watching (with species list option), mammal viewing (elk, moose, bighorn, bears from a safe distance), tide pools, whale watching
- Food & drink: dive bars, regional specialties, sit-down dinners, food trucks, farmer’s markets, breweries (craft beer), wineries, distilleries, coffee road-trip stops
- Culture: live music venues, small-town festivals, museums (art / science / natural history), national monuments, indigenous-led tours, planetariums, drive-in theaters
- Family-friendly: kid-friendly hikes, junior ranger programs, easy paddling, swimming holes, ice cream stops, playgrounds
- Wellness: yoga retreats, meditation spots, scenic running routes, ride-share gym access
Accommodations (multi-select, ranked preference)
- Free dispersed BLM / National Forest camping
- BLM developed campgrounds (vault toilets, primitive)
- National Park / National Forest campgrounds (reservable on recreation.gov)
- State park campgrounds (reservable on state-specific portals, ReserveCalifornia, CPW Shop, ReserveAmerica, etc.)
- County / city campgrounds
- Paid rustic campground (vault toilets, no hookups)
- RV park with full hookups (water / electric / sewer)
- KOAs and private RV resorts
- Cheap motels (under $100/night)
- Mid-range hotels ($100–200/night)
- Splurge resorts (occasional, for anniversary nights or recovery)
- Hostels and shared accommodations
- Cabins (state parks, USFS, Airbnb)
- Vanlife pull-offs, Walmart / Cracker Barrel / Cabela’s overnights
- Boondocking on BLM dispersed land (with stay-limit awareness)
- Truck stops and 24-hour rest areas (for transit nights only)
Vehicle & gear
- Vehicle type: car, SUV, truck, van conversion, Class B/C RV, travel trailer, fifth wheel, motorcycle, bike
- Length, height, and width (or pick a known model and auto-fill), drives campground length limits and the tunnel / low-clearance / oversize-permit pre-check
- Fuel type and MPG
- 4WD / AWD / 2WD (affects which dispersed sites are reachable)
- Solar / battery setup (affects need for hookups)
- Onboard water capacity (affects boondocking duration)
- Gear they’re bringing: paddleboard, kayak, bikes, climbing pads, dog (sizes accommodation filter)
- Roof rack / hitch rack / trailer (affects pull-through requirements)
Privacy & sharing
- Anonymize names? (default yes, show “Traveler 1 / Traveler 2” or custom labels)
- Strip flight or solo-travel details from the public version? (for parents traveling with minors who’ll be alone at some point)
- Hide reservation confirmation numbers in shareable version (default yes)
- Generate a public sharing link with sensitive details masked, alongside a full private version
Budget
- Include a budget? (skip if no)
- Target total trip cost, or daily spend ceiling
- Daily grocery spend estimate
- Frequency of restaurant meals (every day, every other day, occasional, never)
- Fuel price assumptions (use defaults, or enter own)
- Discretionary allowance (firewood, tourist fees, gift shop)
- Any planned big-ticket items (guided climbs, river permits, festival tickets)
Generated output
- Day-by-day itinerary cards matching the v0 format, with weather chip, drive time, and chronologically-ordered finds for that day
- Route map with a single-color loop and numbered stops
- Drive time and distance for each leg, sanity-checked against the user’s pace preference
- Recommended camp or lodging for each night, filtered by accommodation preferences, with direct booking links
- Collapsible reservation cards with placeholders for confirmation number and check-in/check-out, user pastes these in as they book
- Inline backup options on the first day of each region, 2 to 4 alternates per region with booking links and direction maps
- Direction-aware “🗺 Map” pills on every find, hike, reservation, and roadside stop (auto-generated from the canonical place name)
- Roadside finds matched to selected interests, 1–3 per day, in driving order along that day’s route
- Hike suggestions matched to selected interests and proximity to the day’s stops
- Per-plan budget block with state-by-state fuel breakdown if budget mode is on
- Optional alternate variant of the same trip if the user wants to compare two routes (e.g. direct route vs scenic loop, or different return paths), generated as a separate page
- Final output is an editable HTML page, downloadable or hosted
Data sources for v1
- Curated database of campgrounds, hot springs, roadside oddities, and trailheads (seeded from public sources, see Integration Targets below)
- OpenStreetMap or Mapbox for routing and drive-time calculation
- Open-Meteo for forecast + archive weather (already used in v0)
- State-by-state fuel price defaults updated quarterly, optionally augmented by GasBuddy / AAA
- Categorization tags (interest, accommodation type, accessibility, vehicle compatibility, dog-friendly, kid-friendly) on every database entry so the generator can filter intelligently
- User contributions: a “submit a stop” form so beta users can flag missing hot springs, roadside finds, or boondocking sites that the curated database doesn’t yet cover
Integration Targets
The fastest way to build a credible road-trip database is to integrate with the apps that have already done the hard work. Wayfinder doesn’t need to re-curate the world; it needs to pull from the right sources and stitch them into the trip-page format.
Camping & reservations
- Recreation.gov, federal campgrounds (NPS, USFS, BLM, Army Corps), permits, lottery applications. Has a JSON API though documentation is uneven. Cancellation watcher already hits this.
- ReserveCalifornia, California state parks. No public API; cancellation watcher uses headless browsing.
- State-park portals, CO (CPW Shop), UT (ReserveAmerica), NV (Park Reservations), AZ (ReserveAmerica), NM (NM State Parks), OR (Oregon State Parks), WA (Washington State Parks), each has its own system. v2 stitches them.
- KOA, private campground chain, has a national footprint. Booking API exists for affiliates.
- The Dyrt, crowd-sourced campground reviews, freemium model with a Pro tier for offline maps and discounts. Strong on BLM and dispersed sites.
- Campendium, boondocking-focused, cell coverage maps per site, free dispersed camping near every major destination.
- iOverlander, global overlanding database, free wild-camping sites, water fill spots, dump stations. Strong international coverage if Wayfinder ever expands outside North America.
- FreeRoam, free dispersed camping app, BLM/USFS focus, good for the boondocking persona.
- Hipcamp, Airbnb-for-camping, private land hosts. Has an affiliate API.
Activity discovery
- AllTrails, hike database with photos, reviews, GPX tracks. Pro tier for offline. Already linked manually in the v0 page.
- Mountain Project, climbing routes (trad, sport, boulder, alpine) with grades, photos, beta. API is available for partner integrations.
- MTB Project, mountain bike trails with technical ratings, elevation, GPX. Same API ecosystem as Mountain Project (REI / Onyx).
- Hiking Project, alternative to AllTrails, more crowd-sourced, free.
- American Whitewater, river database with flow gauges, difficulty class, put-in/take-out. For kayak and packrafting routes.
- Atlas Obscura, kitschy weird stuff, ghost towns, alien lore, historic oddities. Editorial more than crowd-sourced.
- Roadside America, older but vast database of giant fiberglass things, themed museums, and Americana.
- Hot springs: Hot Springs Enthusiast, the Touring Hot Springs guidebook series, and Atlas Obscura’s hot-spring tag combined.
- Strava heatmap, surfaces unofficial routes locals actually use, useful for cycling and running.
Navigation & mapping
- Google Maps URL scheme, already used for direction pills; no API key required, deep-links to Maps app on phones
- Apple Maps URL scheme, already used as a parallel link on reservation cards
- OpenStreetMap, free routing, no API key, good for embedded mini-maps
- Mapbox, paid alternative for prettier custom maps if the SVG approach hits its limit
- Gaia GPS, backcountry mapping, offline maps, layers (USFS roads, MVUM, satellite). For users who already use Gaia, export trip stops as a GPX or KML.
- Onx Offroad / Onx Backcountry, same idea, popular with overlanders. GPX export for compatibility.
Weather, road conditions, fuel
- Open-Meteo, forecast + archive, already in v0
- NWS / weather.gov, official US forecasts, useful as a cross-check for severe-weather alerts
- State DOT 511 systems (CalTrans, CDOT, NDOT, etc.), road closures, mountain pass status, construction. Each state’s API is different; Wayfinder normalizes them.
- InciWeb, active wildfire incidents, evacuation orders
- GasBuddy / AAA, regional fuel price defaults, more accurate than national averages
Connectivity & logistics
- Cell coverage maps, Verizon, T-Mobile, AT&T published maps, or third-party crowd-sourced (Campendium has these)
- Starlink coverage, for vanlife users with Starlink Mini
- EV charging, PlugShare, Tesla Supercharger network, ChargePoint (for EV roadtrips, future)
- Dump station / water fill, Sanidumps, RV Dump Stations apps
v2 · Live Data (later)
Once v1 ships and gets used, the next leap is making the trip page a live document instead of a snapshot.
- Real-time campground availability via recreation.gov and ReserveCalifornia APIs (or scrapers where APIs don’t exist), wired directly into the day cards
- Cancellation watcher promoted from one-off scheduled task to a per-user feature (the v0.5 watcher concept generalized for any trip)
- On-demand “search now” button on every trip page, triggering the same search the cron runs but on demand
- Weather and road condition pre-checks before departure (Tioga Pass status, fire closures, snow on mountain passes)
- Autofill booking: pre-populate the reservation form from the stored traveler + vehicle profile (party size, pets, vehicle/trailer/tent, address, Access Pass) so a watcher-found cancellation is one tap from booked, stops before payment (see the Cancellation Watcher section)
- Shared trip pages: collaborator can comment, add a stop, swap a campsite, with the original planner approving changes
- Trip history and copy-from-old-trip workflow (most repeat road trips are 70% the same route as last time)
v3 · Audience Profiles & Kids’ Mode (concept)
The v1 questionnaire captures what the planner likes. But a road trip almost always carries more than one person, and the people in the van rarely want the same trip. A teenager who wants to boulder all day, a parent who wants a hot spring and a hammock, and a grandparent who tops out at a half-mile nature walk are three different trips sharing one vehicle. The next tool is an audience layer that sits on top of the generator: before building the page, you describe who is actually coming and check what each of them cares about, and the itinerary is balanced across those people instead of optimized for a single set of interests.
The audience form
A short form, filled out once per trip. The planner adds one profile per traveler, or per group, for trips where “the kids” or “the grandparents” can be treated as a unit, and answers a few quick questions for each.
Per-person profile
- Label / role (e.g. “Mom,” “Teen,” “Grandpa,” or a custom name)
- Age band (drives default pace, hike-length ceilings, and which Kids’ Mode features turn on)
- What they care about, the same granular interest taxonomy used in the v1 questionnaire (climbing, hot springs, hikes by distance, water sports, roadside oddities, wildlife, food, photography, etc.), but checked per person rather than once for the whole trip
- Energy and pace for this person (all-day objective vs. one thing then rest)
- Dealbreakers (no exposure / heights, prone to carsickness on switchback roads, needs a real bed every third night, no overnight lows below X)
- Priority weight, whose preferences win when they conflict, so no one profile gets zeroed out across the whole trip
Kids’ Mode · the AR “I Spy” road game
The hardest part of a long road trip isn’t the destinations, it’s the transit hours between them, kids in the back seat for stretches where the itinerary has nothing planned because there’s nothing to plan. Wayfinder already knows the exact route, the named peaks and rock formations it passes (the geology database), and the wildlife ranges it crosses. That is everything needed to turn the drive itself into a game.
Kids’ Mode is a kid-facing companion view, tied to the same trip, that builds an augmented-reality scavenger hunt for each driving leg. The child holds a phone or tablet up to the landscape; when the camera, GPS, and compass line up with a known feature, say, Wheeler Peak off to the west on the Great Basin approach, an AR overlay confirms the find, labels it, and checks it off the card.
How a leg plays
- Each leg gets a scavenger card generated from that leg’s geology + wildlife data, plus generic “nature bingo” filler for the long empty stretches
- Every target shows a reference photo so the kid knows exactly what they’re hunting for
- Hold the device up; on a confident match the AR overlay names the feature and registers the find
- Found-it check-off, points, and a per-leg completion badge
- Fully offline, the scavenger card and reference photos download with the trip, and the matching runs on the device’s own camera, GPS, and compass, so it works in exactly the cell dead zones (the Loneliest Road, the Basin and Range) where it’s needed most
What it can have kids spot
- Named peaks and formations already in the geology database, Wheeler Peak, the San Rafael Reef, Half Dome, El Capitan, the Bryce hoodoos, Goblin Valley’s mushroom rocks
- Wildlife by range and season, pronghorn across the Great Basin, bighorn sheep near Zion, marmots and pikas at altitude, ravens and red-tailed hawks on fence posts almost everywhere
- Roadside oddities already tagged for the trip, Crystal Geyser, Sand Mountain, the Goldwell open-air sculptures
- Generic nature bingo for stretches with nothing named, a windmill, a cattle guard, a dust devil, a hawk mid-flight, the first snow-capped peak of the day
In the generator
- Audience profiles become an optional step in the v1 questionnaire; skipping it falls back to today’s single-planner behavior
- Kids’ Mode auto-generates from the same route, geology, and wildlife data already powering the adult page, no separate authoring, it’s a view toggle per trip
- The two features reinforce each other: an audience profile flagged as a young child is what switches Kids’ Mode on for that trip in the first place
Business Vision
This starts as a personal tool that solves a real problem for me. The Yosemite trip is the proof of concept. If v1 works and other people use it, there’s a plausible business here.
Possible model
- Free tier: generate one trip, basic features, ad-supported or fully free
- Paid tier: unlimited trips, live data (cancellation alerts, weather, road conditions), collaborator features, downloadable PDFs for offline use, custom branding for guides or small tour operators
- Affiliate revenue: referral links to camping equipment, regional guidebooks, guide services (Sierra Mountain Guides, etc.)
Long-term goal
If this turns into a real product with real revenue, the money goes into the retirement fund. I’m not betting on it. But the only way to find out if a side project can become a small business is to ship the side project and see what happens. The Yosemite trip page is v0. v1 is the test.
Non-Goals
- Not building a flight search engine, hotel comparison tool, or restaurant review site. Wayfinder links out to the tools that already do those well.
- Not replacing recreation.gov or ReserveCalifornia for booking. The trip page links directly to them and the user books on those sites.
- Not optimizing for luxury travel, business trips, or international itineraries. Wayfinder is for North American road trips, vehicle-based, mix of camping and lodging.
- Not a social network. No accounts required for v0 or v1. v2 collaborator features are bolted on, not the point.
- Not building a mobile app first. Web-first, mobile-responsive. App later only if usage data supports it.