Building TagAlong: pull requests for group trips
TagAlong is a collaborative itinerary editor for group trips. Planning a trip with friends usually means one overworked organizer, a chat thread where decisions get lost, and a loudest-voice-wins plan. I noticed that a shared itinerary is a living document with many contributors who need review and approval, which is exactly the problem version control already solves. So TagAlong borrows GitHub's model: the trip is the repo, the plan is the main branch, a suggested change is a proposal, the group votes, and an approved proposal is locked in as a numbered revision.
The AI does the heavy first draft. Each traveler fills in preference cards that Jev, TypeSafe's judgment model, pre-fills from what is already known, so the quiz takes about a minute. A LangGraph pipeline then plans every day in parallel from real, rated places, checks opening hours, routes and budget in code, and scores how fairly the plan treats each person. The rule behind the design is that the LLM proposes, Jev judges, and code disposes. Votes, quorum, veto and lock-in are always plain SQL, never a model decision.
I wrote the product spec first, a detailed PRD with roles (Captain, Co-pilot, Traveler, Guest), governance presets and success metrics, then built the whole thing solo on Next.js, Supabase with row-level security, LangGraph, OpenRouter and Mapbox. It also imports an existing itinerary from a PDF or photos, and a location-aware assistant answers questions about the trip using read-only SQL that runs as the asking user.
It is live at tagalong-vert.vercel.app. Friends join with a single link, no app and no sign-up.