How ayushhtiw/travel.it works
Travel.it is a full-stack trip-planning platform: users discover destinations and places, plan day-by-day itineraries, manage budgets, and can chat with an AI travel assistant. The frontend provides routed screens and API services; the Spring Boot backend exposes domain APIs and persists application data. The graph preserves the README’s major features. Some frontend-to-backend links are documented only at the architectural level; unsampled implementation details are not assumed.
Main entry points: AiService.java AI conversation service · PlaceService.java Places and maps · main.tsx Travel.it UI · api.ts API client
Components 24
Web client
- Travel.it UI
frontend/src/main.tsx - Routed screens
frontend/src/routeTree.gen.ts - API client
frontend/src/services/api.ts - Auth services
frontend/src/services/authService.ts - Trevvy chat UI
frontend/src/components/ai/Trevvy.tsx
Identity
- Auth API
backend/src/main/java/com/travelit/auth/controller/AuthController.java - Auth service
backend/src/main/java/com/travelit/auth/service/AuthService.java - User records
backend/src/main/java/com/travelit/auth/entity/User.java
Travel discovery
- Destinations
backend/src/main/java/com/travelit/destination/service/DestinationService.java - Places and maps
backend/src/main/java/com/travelit/place/service/PlaceService.java - Place reviews
backend/src/main/java/com/travelit/review/service/ReviewService.java - Nearby discovery
backend/src/main/java/com/travelit/explore/service/ExploreService.java
Trip planning
- Trips and days
backend/src/main/java/com/travelit/trip/entity/Trip.java - Itinerary items
backend/src/main/java/com/travelit/trip/service/ItineraryItemService.java - Trip budgets
backend/src/main/java/com/travelit/budget/service/BudgetService.java - Trip weather
backend/src/main/java/com/travelit/weather/service/WeatherService.java
AI assistance
- AI API
backend/src/main/java/com/travelit/ai/controller/AiController.java - AI conversation service
backend/src/main/java/com/travelit/ai/service/AiService.java - Prompt builder
backend/src/main/java/com/travelit/ai/prompt/AiPromptBuilder.java - AI provider
backend/src/main/java/com/travelit/ai/provider/AiProvider.java - Conversation history
backend/src/main/java/com/travelit/ai/entity/AiConversation.java
Other components
- Traveler
- Google Places
- Groq AI
Connections 23
- Traveler → Travel.it UI: uses
README.md - Travel.it UI → Routed screens: starts
frontend/src/main.tsx - Traveler → Auth services: signs in
README.md - Auth services → API client: calls
frontend/src/services/authService.ts - API client → Auth API: HTTP requests
- Auth API → Auth service: delegates
- Auth service → User records: reads and saves
backend/src/main/java/com/travelit/auth/service/AuthService.java - Traveler → Destinations: discovers
README.md - Traveler → Nearby discovery: explores nearby
README.md - Places and maps → Google Places: searches places
backend/src/main/java/com/travelit/place/service/PlaceService.java - Place reviews → Places and maps: checks place
backend/src/main/java/com/travelit/review/service/ReviewService.java - Traveler → Trips and days: plans trips
README.md - Traveler → Itinerary items: edits schedule
README.md - Traveler → Trip budgets: tracks spending
README.md - Traveler → Trip weather: checks weather
- Traveler → Trevvy chat UI: chats with
README.md - Trevvy chat UI → AI API: sends messages
- AI API → AI conversation service: delegates
- AI conversation service → Prompt builder: builds prompts
backend/src/main/java/com/travelit/ai/service/AiService.java - AI conversation service → AI provider: requests response
backend/src/main/java/com/travelit/ai/service/AiService.java - AI conversation service → Conversation history: stores messages
backend/src/main/java/com/travelit/ai/service/AiService.java - AI conversation service → Places and maps: gets nearby context
backend/src/main/java/com/travelit/ai/service/AiService.java - AI provider → Groq AI: generates replies