4.1 KiB
4.1 KiB
Roadmap — travelledger (Epics & User Stories)
Product structure derived from the converged BMC + value proposition. Mobile-first web (Next.js 15 + TypeScript + Capacitor + Tailwind) first; iOS/Android via Capacitor later with ~90% code reuse. Sequenced: validate core ledger (Direction A), then layer commerce + AI (Direction B).
Epic 1 — Trip & Itinerary (MVP core)
Goal: a user can plan and live-track one trip in one place.
- As a traveler, I want to create a trip (title, dates, destination) so my data is scoped.
- I can add segments (flight / hotel / train / car / activity) with times, origin, destination, confirmation code.
- I can see a chronological timeline / map of the trip.
- I can edit or cancel a segment and have dependent items update.
- I can share a read-only trip page with travel companions/family.
Epic 2 — Booking QR & Attachments
Goal: every confirmation is one tap away, even offline.
- I can attach a QR/PDF per segment (boarding pass, hotel check-in, rail ticket).
- The app stores the image AND parses structured data (flight no., gate, seat, ref) for search.
- Attachments are cached for offline access and encrypted at rest.
- I can add "to Wallet" (Apple/Google) where the pass type supports it.
- I can upload receipt photos and link them to an expense.
Epic 3 — Expenses & Statistics
Goal: answer "how much did this trip cost, and on what?"
- I can log an expense (amount, currency, category, date, note) linked to a segment or free.
- Multi-currency with live/static FX; totals converted to a home currency.
- Post-trip dashboard: category %, per-day spend, per-currency breakdown.
- I can export to CSV / Excel / QuickBooks (Premium).
- (Later) bank/Open-Banking sync auto-imports transactions (Pro).
Epic 4 — Cancellation Guardian
Goal: never miss a refund window — the emotional moat.
- Each booking can have a cancellation rule (fixed date / hours-before / %-based refund).
- The app computes the deadline and sends push/email reminders before it.
- I see a "deadlines" list grouped by urgency across all trips.
- I can mark a booking cancelled/refunded and see the refund impact.
Epic 5 — AI Assist (opt-in, modular)
Goal: reduce manual entry and add intelligence.
- Parse a booking email/PDF → auto-create segment + booking (LLM extraction).
- Auto-categorize expenses from receipt text/vision.
- Generate a post-trip narrative summary ("you spent 40% on food across 5 cities").
- AI itinerary suggestions ("2 days in Tokyo: …").
- Provider-agnostic interface so the LLM can be swapped without touching business logic.
Epic 6 — Accounts, Plans & Sharing
Goal: freemium hygiene + social loops.
- Free vs. Premium ($4.99/mo, $39/yr) vs. Pro ($9.99/mo, family/multi-user) vs. trip pass.
- Referral: invite a travel buddy → both get 1 month Premium.
- Shared trip pages drive the viral loop (non-users upgrade to add expenses/get alerts).
Epic 7 — Booking Commerce (Direction B, post-PMF)
Goal: commission upside without becoming an OTA.
- Affiliate hotel/tour/insurance search + booking inside the app.
- Sponsored/featured placements (clearly labeled).
- Use established affiliate networks as merchant of record (avoid chargeback exposure early).
- Revenue concentration guard: no single partner >25% of commission revenue.
Epic 8 — Native Apps & Platform
Goal: iOS + Android with minimal rework.
- Wrap the Next.js PWA with Capacitor; reuse ~90% of UI/logic.
- Native plugins: camera (QR scan), filesystem (offline), push (deadline alerts).
- App-store listings, OTA update pipeline (Expo EAS or Capacitor equivalent).
- Fallback path if native perf becomes critical: React Native + Expo.
Suggested sequencing (phases)
- Phase 0 (now): Epics 1–3 MVP on web PWA. Validate the logging habit.
- Phase 1: Epic 4 (Guardian) + Epic 6 (plans/referral) — the hook + monetization.
- Phase 2: Epic 5 AI (opt-in) — differentiation.
- Phase 3: Epic 7 commerce — only after trust + scale.
- Phase 4: Epic 8 native apps.
Day-one metrics to instrument
- Paid conversion rate (3–5% target), trip completion rate (>60%), CAC payback (<6 mo), plus churn and bookings-per-user.