How seed123-psy/smart-trip-planner works
Smart Trip Planner is a browser-based trip-planning application with a Node.js API and MySQL-backed accounts and saved trips. Its main workflow takes a user’s city, dates, preferences and optional hotel; searches current places, builds and checks an itinerary with real routes, then returns a plan with food and preparation guidance. The UI also supports editing, maps, weather, PDF export and trip sharing. Edges reflect the excerpts, SOURCE INDEX references and README; several UI and administration internals are unsampled, so their links are shown only where documented.
Main entry points: app.js Trip view · planner.js Planning orchestrator · plan.js Plan endpoint · plan-client.js Plan client
Components 31
Trip experience
- Planning entry
scripts/landing-flow.js - Plan client
scripts/plan-client.js - Trip view
scripts/app.js - Trip editor
scripts/editor.js - Timeline
scripts/timeline.js - Map and routes
scripts/map.js - Route lookup
scripts/route.js - Weather
scripts/weather.js - Preparation view
scripts/prep.js - Food view
scripts/food.js - PDF export
scripts/export-pdf.js
Planning workflow
- Place discovery
tools/planner.js - Itinerary scheduling
tools/planner.js - Route and checks
tools/planner.js - Food and prep agents
tools/planner.js - Planning orchestrator
tools/planner.js
API and integrations
- API routing
tools/api-router.js - Local server
serve.js - Plan endpoint
api/plan.js - Amap proxy
tools/amap-proxy.js
Accounts and data
- Login and account
scripts/login.js - Authentication
tools/auth.js - Sessions
tools/sessions.js - MySQL database
tools/db.js - Saved trips
tools/trips.js - Example trip data
data/itinerary.js - Place data
data/poi.js - Preparation data
data/prep.js
Other components
- Traveler
- Amap services
- DeepSeek
Connections 37
- Traveler → Planning entry: enters request
README.md - Planning entry → Plan client: submits plan
README.md - Plan client → Plan endpoint: requests plan
scripts/plan-client.js - Plan endpoint → Planning orchestrator: runs planning
api/plan.js - Planning orchestrator → Place discovery: searches places
README.md - Place discovery → Amap services: queries places
README.md - Planning orchestrator → Itinerary scheduling: selects and schedules
README.md - Planning orchestrator → DeepSeek: calls model
tools/planner.js - Planning orchestrator → Route and checks: checks and repairs
README.md - Route and checks → Amap services: calculates routes
README.md - Planning orchestrator → Food and prep agents: runs final agents
README.md - Plan endpoint → Saved trips: saves result
api/plan.js - Plan endpoint → Plan client: streams result
api/plan.js - Plan client → Trip view: opens itinerary
README.md - Trip view → Timeline: renders days
README.md - Trip view → Map and routes: shows map
README.md - Map and routes → Route lookup: loads road routes
- Route lookup → Local server: requests routing
README.md - Local server → Amap proxy: forwards requests
serve.js - Amap proxy → Amap services: proxies requests
tools/amap-proxy.js - Trip view → Weather: shows forecast
README.md - Trip view → Trip editor: edits itinerary
README.md - Trip view → Preparation view: opens preparation
README.md - Trip view → Food view: shows food
README.md - Trip view → PDF export: exports PDF
README.md - Example trip data → Trip view: provides example
README.md - Place data → Planning orchestrator: supplements places
- Preparation data → Preparation view: provides guidance
README.md - Traveler → Login and account: signs in
README.md - Login and account → API routing: uses account APIs
README.md - Local server → API routing: dispatches API
serve.js - API routing → Authentication: authenticates requests
tools/api-router.js - Authentication → Sessions: resolves sessions
tools/auth.js - Authentication → MySQL database: reads users
tools/auth.js - Sessions → MySQL database: stores sessions
tools/sessions.js - Saved trips → MySQL database: stores trips
tools/trips.js - API routing → Saved trips: serves trip actions
tools/api-router.js