How himmatmundhe07/myitnary works
My Itinerary is a travel-planning application whose central journey is: a traveler enters trip preferences, receives a personalized itinerary grounded in real places and routes, then views and manages the trip. The React client also supports account setup, discovery, healthcare lookup, and SOS safety; the Express API handles authentication and product services. The README documents PDF export, maps, and Google integrations, but their client implementation is not included in the sampled source, so those connections are represented only where supported by documentation. Auth and SOS server behavior is sampled; trip-service wiring is not.
Main entry points: axios.js HTTP client · App.jsx React application · gemini.service.js Itinerary grounding · index.js Express API
Components 29
Travel client
- React application
client/src/App.jsx - Public pages
client/src/routes/PublicRoutes.jsx - Account pages
client/src/routes/DashboardRoutes.jsx
Trip planning
- Trip creation and views
client/src/pages/trips - Trip state
client/src/store/tripSlice.js - Place discovery
client/src/pages/discover - Trip endpoints
server/routes/tripRoutes.js - Itinerary grounding
server/services/gemini.service.js - Saved trips
server/models/Trip.js
Identity and safety
- Profile and preferences
client/src/pages/account - Sign-in and signup
client/src/pages/auth - Authentication state
client/src/store/authSlice.js - SOS and guardians
client/src/pages/safety - Auth endpoints
server/routes/authRoutes.js - Auth operations
server/controllers/authController.js - SOS endpoints
server/routes/sosRoutes.js - User records
server/models/User.js
API and integrations
- HTTP client
client/src/api/axios.js - Express API
server/index.js - Place cache
server/models/PlaceCache.js - Route cache
server/models/RouteCache.js - Email delivery
server/services/emailService.js
Healthcare
- Healthcare finder
client/src/pages/healthcare - Healthcare data
server/routes/healthcareRoutes.js
Other components
- Traveler
- Gemini AI
- Google Places and Routes
- Mail provider
- MongoDB
Connections 38
- Traveler → React application: uses
- React application → Public pages: routes to
- React application → Account pages: routes to
- React application → Trip creation and views: routes to
- React application → Healthcare finder: routes to
- React application → SOS and guardians: routes to
- Public pages → Sign-in and signup: routes to
- Account pages → Profile and preferences: routes to
- Trip creation and views → HTTP client: requests
- Trip creation and views → Trip state: updates
- Place discovery → HTTP client: requests
- Profile and preferences → HTTP client: requests
- Sign-in and signup → HTTP client: requests
- Sign-in and signup → Authentication state: updates
- SOS and guardians → HTTP client: requests
- Healthcare finder → HTTP client: requests
- HTTP client → Express API: HTTP requests
- Express API → Auth endpoints: dispatches
- Express API → Trip endpoints: dispatches
- Express API → Healthcare data: dispatches
- Express API → SOS endpoints: dispatches
- Auth endpoints → Auth operations: calls
- Auth operations → User records: reads/writes
- Auth operations → Email delivery: sends OTP
- Email delivery → Mail provider: delivers
- SOS endpoints → User records: reads/writes
- SOS endpoints → Mail provider: sends alert
- Trip endpoints → Saved trips: manages trips
- Trip endpoints → Itinerary grounding: generates itinerary
- Itinerary grounding → Gemini AI: generates content
- Itinerary grounding → Google Places and Routes: grounds places and routes
- Itinerary grounding → Place cache: reads/writes
- Itinerary grounding → Route cache: reads/writes
- Healthcare data → Healthcare finder: serves listings
- User records → MongoDB: persists in
- Saved trips → MongoDB: persists in
- Place cache → MongoDB: persists in
- Route cache → MongoDB: persists in