How phuong1274/hangout-smart-travel-system works
HSTS is a smart-travel platform backend for discovering destinations, generating itineraries, and managing shared trips, with supporting accounts, reviews, and administration. The principal workflow is a traveler requesting an itinerary through the API; the itinerary query reads trip history and builds day-by-day activities and transport options, including intercity searches. The tree also shows catalog, expense, invitation, and moderation capabilities. Evidence is strongest for API dispatch, itinerary logic, review endpoints, and selected frontend hooks; many feature-to-handler and frontend-to-backend links are not shown in the sampled source.
Main entry points: AppDbContext.cs Application database · CreateReviewCommand.cs Reviews and reports · GenerateItineraryQuery.cs Itinerary generation · RouteShell.jsx Web client
Components 20
API and access
- Web client
HSTS.FE/src/routes/RouteShell.jsx - API host
HSTS.BE/HSTS.API/Program.cs - Review endpoints
HSTS.BE/HSTS.API/Controllers/ReviewsController.cs - Moderation endpoints
HSTS.BE/HSTS.API/Controllers/AdminReviewModerationController.cs
Travel planning
- Itinerary generation
HSTS.BE/HSTS.Application/Itineraries/Queries/GenerateItineraryQuery.cs - Sandbox transport search
HSTS.BE/HSTS.Infrastructure/Services/SandboxTravelSearchService.cs - Intercity transport
HSTS.BE/HSTS.Application/Interfaces/IFixedIntercityTransportService.cs
Trip operations
- Trip endpoints
HSTS.BE/HSTS.API/Controllers/TripsController.cs - Trips and members
HSTS.BE/HSTS.Application/Trips/Commands/SaveTripCommand.cs - Expenses and budgets
HSTS.BE/HSTS.Application/Expenses/Queries/ExpenseQueries.cs - Trip invitations
HSTS.BE/HSTS.Application/Invitations/Commands/InvitationCommands.cs
Destination catalog
- Location discovery
HSTS.BE/HSTS.Application/Locations/Queries/GetPublicLocationsQuery.cs - Location submissions
HSTS.BE/HSTS.Application/LocationSubmissions/Commands/ReviewLocationSubmissionCommand.cs - Reviews and reports
HSTS.BE/HSTS.Application/Reviews/Commands/CreateReviewCommand.cs
Accounts and platform
- Authentication
HSTS.FE/src/features/auth/hooks/useAuth.js - Token storage
HSTS.FE/src/utils/storage.js - Place search
HSTS.FE/src/hooks/useNominatimSearch.js - Application database
HSTS.BE/HSTS.Infrastructure/Persistence/AppDbContext.cs
Other components
- Traveler
- Nominatim
Connections 16
- Traveler → Web client: uses
- Web client → API host: sends requests
- API host → Review endpoints: maps controllers
- Review endpoints → Reviews and reports: dispatches queries
- Moderation endpoints → Reviews and reports: dispatches commands
- Itinerary generation → Application database: reads trip history
- Itinerary generation → Intercity transport: searches routes
- Trip endpoints → Trips and members: handles trip operations
- Trips and members → Application database: persists trips
- Expenses and budgets → Application database: reads and writes
- Trip invitations → Application database: reads and writes
- Location discovery → Application database: reads locations
- Location submissions → Application database: reads and writes
- Reviews and reports → Application database: reads and writes
- Authentication → Token storage: stores redirects
- Place search → Nominatim: searches places