Skip to content

Trip day plan — stops, editing, maps, culture

Status: draft · Last session: 25 Oct 2026

Builds on M1 — Day plan (revisions 1–3), M2 — Culture and M13 — Maps, all built. This card lists what v1 adds or changes; everything in those cards that is not changed here stays as built.

Who and the job

  • Traveller: "What are we doing today, when, and where do I need to be?" Read-only.
  • Group leader and trip creator: "Does this day look right, and is everything arranged?"
  • Visitor (signed out): sees the fitted plan from the planner before keeping it (P50).

Value

The day plan is the product: what the leader forwards and what travellers open every morning. v1 makes it work for every way a trip starts and ends, for services the group arranges itself, and for places where people spend very different amounts of time.

Already built (kept)

  • Day list (web) and day tabs (phone); swipe or edge arrows; firm pull to the next or previous day.
  • Stop cards: photo cards for places, compact rows for meals and free time; three-bullet story, tip, traveller note, Directions.
  • The day flows hotel → stops → hotel with move lines ("Drive: 10 min · A → B"). Tonight's hotel at the top.
  • Edit mode (Edit / Done): "+" between stops, kind chips, times filled in automatically, the rest of the day shifts when a time changes.
  • Culture: word of the day, festivals on the day, "On your dates" cards, farewell phrase.
  • Map: right column on web, full screen on phones, numbered pins, Google Maps day route and per-stop links, whole-trip map.

Decided (founder, 25 Oct 2026)

  1. One day plan everywhere. The planner's preview for a signed-out visitor is this same page, read-only, with the map and culture. The first edit asks them to sign in (P50).
  2. Trip start and end, not only flights (updates P50 item 5). Creating a trip asks "Where does your trip start?" and "Where does it end?", each optional, with three choices:
  3. Flying in / flying out: airport (Kathmandu international or a domestic airport), date, time, flight number if known. Pickup or drop with the airport buffer (international 3 h 30 min, domestic 2 h; settings, not hard-coded).
  4. By road: town (for example Biratnagar or Butwal), date, time if known. The first move line reads "Arrive in Kathmandu by road · ~14:00"; no buffer.
  5. Already here: a hotel or place in the first or last town. The day starts or ends there.
  6. On the day: "Airport pickup · TIA → Hotel X" opens the first day; "Leave for the airport 10:30 · flight 14:00" closes the last. Both are move lines, not cards.
  7. No time given: "Free morning · Add your arrival time to plan the day" (same for the end).
  8. This also serves domestic travellers (later markets).
  9. Services the group arranges itself (planner's "Not needed"):
  10. No vehicle: the move line reads "Drive: 25 min · Hotel → Boudha · your own transport".
  11. No hotel: the night row reads "Tonight: your own stay · Pokhara" (the town stays, so the day still ends somewhere).
  12. No guide: nothing shown.
  13. Leader and trip creator see "Need a hand? Book with NepWalk ›" on those lines. It switches the service back on, adds NepWalk's pick and sends it to the admin. Travellers never see it.
  14. Confirmation status, no prices. Leader and trip creator see a quiet "Confirming" chip on a hotel or vehicle until the admin marks it confirmed (M12). Travellers see only confirmed names, never "pending" (M5, P28).
  15. Undo after delete replaces the confirm dialog when removing a stop ("Stop removed · Undo", a few seconds).
  16. Visit time per place (system ready in v1; smarter choices in v2):
  17. Each library place gets three optional values from the founder's research: minimum, typical and maximum time people spend there. Any of them may be empty. Example: Boudhanath typical 1 h 30 min; Pashupatinath up to 8 h; Lumbini more than a day.
  18. Pace picks the visit time when the values exist: Full → minimum, Balanced → typical, Relaxed → maximum. Missing values fall back to the next one present, then to typicalDurationMinutes, then to the kind's default (M1 revision 3).
  19. The backend generates the timeline; travellers never arrange times. Anyone who edits can still stretch a stop past the maximum (ten hours of meditation at Pashupatinath is fine); the rest of the day shifts as today.
  20. A visit longer than the day may fill the whole day and carry into the next (Lumbini).
  21. Which stops drop when a day gets too full stays as today (the existing fitting). Choosing what to drop from the traveller's preferences, and AI, come in v2.
  22. Offline day comes in v1 as the last item: the day's plan readable on the phone without a connection (PWA, feature 11).

Signature idea (D9): the day's trail

The hotel → stops → hotel flow is drawn as one walking trail running down the day, with small paila (footstep) marks between the cards. Move lines sit on the trail; tonight's hotel is where the trail ends, like a camp. It makes the page read as a journey, not a list, and uses the flow that already exists. It never covers text, times or controls.

Placement — and why

Element Where Why
Start of the trip (pickup / road arrival / hotel) First line of day 1, on the trail The day begins where the traveller really is
End of the trip (airport drop / road / hotel) Last line of the last day The plan ends with the way home
"Your own transport" / "your own stay" On the move line / the night row Same place as a booked service, so the flow never breaks
"Book with NepWalk ›" Under those lines, leader and creator only Offered where the gap is, never pushed on travellers
"Confirming" chip Beside the hotel or vehicle name, leader and creator only Status without noise
"Stop removed · Undo" Bottom of the screen, a few seconds Mistakes are cheap

States and edge cases

  • No start or end given: free morning or evening with the "Add your arrival time" line.
  • Arrival time after the day's first stop: the stops before it move later (existing shift).
  • Departure on a day with a domestic flight: warn the editor when the domestic arrival leaves less than the international buffer (P50).
  • A place with no time values: the kind's default; nothing shown to travellers about it.
  • Stretching a stop past midnight: it carries into the next day; the editor sees the shift.
  • Every service not needed: the trail still runs hotel-less from the start point to the end point.
  • Offline (once built): the last opened days show; editing waits for a connection.

Acceptance checks

  1. A signed-out visitor sees the planner's fitted plan as this day plan, read-only; the first edit asks to sign in.
  2. Flying in at 11:00 international: day 1 opens with "Airport pickup · TIA → Hotel X"; flying out at 14:00 international: the last day closes with "Leave for the airport 10:30".
  3. Arriving by road from Biratnagar at 14:00: day 1 opens with "Arrive in Kathmandu by road · ~14:00".
  4. Vehicle not needed: move lines read "your own transport"; the leader sees "Book with NepWalk ›", a traveller does not; tapping it turns the vehicle back on with NepWalk's pick.
  5. Hotel not needed: "Tonight: your own stay · Pokhara".
  6. An unconfirmed hotel shows "Confirming" to the leader and nothing pending to a traveller.
  7. Removing a stop shows "Undo"; Undo brings it back in the same place and time.
  8. The same Paila at Relaxed gives Pashupatinath its maximum time and at Full its minimum; a place without values uses the kind's default.
  9. Stretching a stop shifts the rest of the day; nothing is lost.

Later (v2)

  • Choose which stops drop from the traveller's preferences (interests, pace) instead of the current fitting; AI from v2.
  • Opening hours and best time of day per place.
  • Weather and sunrise.
  • Place knowledge for Pailas (essence, restaurants and activities nearby).

Tasks (proposed)

Task Owner Size
place-visit-times: min / typical / max visit time on places (nullable); pace picks the time; backend timeline uses it engineer (backend) 20 XP
place-visit-research: visit times for every library place Prakash 10 XP
trip-start-end: start and end of the trip (flight, road, already here) on create; first and last days fit; buffers as settings engineer 20 XP
own-service-lines: "your own transport" / "your own stay" lines and "Book with NepWalk" for leader and creator engineer (frontend) 10 XP
confirming-chip: confirmation status on hotel and vehicle for leader and creator engineer (frontend) 5 XP
stop-undo: undo after removing a stop engineer (frontend) 5 XP
day-trail: the day's trail signature engineer (frontend), after the HTML design 10 XP
offline-day: the day readable offline (last v1 item) engineer (frontend) 20 XP
day-plan-qa: test plan from the checks Niwesh 10 XP

trip-start-end replaces trip-flights in the planner card. Each implementation task gets a spec in docs/v1/tasks/ (team-spec) before assignment.