v25.2.1
This project is an AI-powered conversational assistant designed to help users discover highly personalized travel recommendations. It combines natural-language interaction with a guided quiz to build an accurate profile of the user's preferences.
Users can simply describe what they like — preferred crowd levels, budget, location types, interests, transportation mode, or any other details. The AI interprets these free-form inputs and returns tailored travel suggestions based on the user’s unique profile.
For users who prefer a more structured flow, the application includes a short, intuitive quiz. Each step captures essential preference data, helping the system refine user preferences and produce even more accurate recommendations.
The goal is to make travel discovery simple, engaging, and highly personalized. Whether users type freely or take the quiz, the system delivers smart, AI-driven suggestions that match their interests and travel style.
- Framework: React 9.2.0
- Language: Node v25.2.1
- Build Tool: Vite
- State management: Redux Toolkit
Install project with npm
npm installDevelopment mode (running on http://localhost:3000)
npm run devBuild and run project
npm build && npm previewsrc/
├── api <-- # Base API config
├── context <-- # React context
├── features <-- # Domain-based feature modules
| ├── auth/ # Feature: Authentication
│ │ ├── components/ # Feature-specific UI
│ │ ├── hooks/ # React hooks for auth
│ │ ├── store/ # Auth Redux store
│ │ ├── utils/ # Auth utils
│ │ ├── api.ts # API requests
│ │ ├── types.ts # Types specific to auth
│ │ └── index.ts # Entry point (barrel file)
| └── ...
├── hooks <-- # Shared (global) React hooks
├── store <-- # Redux Toolkit store setup
├── styles <-- # Global styles
├── ui <-- # Truly shared UI components (buttons, inputs, etc.)
├── utils <-- # Shared utilities
└── main.tsx # Entry point