TravelCo is an innovative travel planning platform that leverages artificial intelligence to create personalized travel itineraries. The system combines modern web technologies with AI capabilities to provide users with customized travel recommendations based on their preferences and requirements.
- Provide a secure and user-friendly platform for travel planning
- Generate personalized travel itineraries using AI
- Implement secure authentication with OTP verification
- Create an intuitive user interface for itinerary management
- Enable real-time updates and modifications to travel plans
-
User Authentication & Security
- JWT-based authentication
- Email OTP verification via Abstra
- Secure session management
-
AI-Powered Itinerary Generation
- OpenAI integration for personalized recommendations
- Preference-based itinerary customization
- Real-time itinerary updates
-
User Management
- User profile management
- History of generated itineraries
Frontend Backend Database
React + TS ◄───► Node.js API ◄───► PostgreSQL
▲
│
OpenAI
API
- Framework: React with TypeScript
- UI Library: Ant Design (customized)
- State Management: Zustand + React Query
- Build Tool: Vite
- Styling: Tailwind CSS
- Runtime: Node.js
- Framework: Express.js
- Database: PostgreSQL
- Authentication: JWT + OTP (Abstra)
- API Style: RESTful
- Containerization: Docker + Docker Compose
- Environment Management: .env configuration
- Error Handling: Custom error middleware
-
Users
- id: UUID (Primary Key)
- email: VARCHAR(255)
- password_hash: VARCHAR(255)
- created_at: TIMESTAMP
- updated_at: TIMESTAMP
-
Itineraries
- id: UUID (Primary Key)
- user_id: UUID (Foreign Key)
- title: VARCHAR(255)
- start_date: DATE
- end_date: DATE
- preferences: JSONB
- created_at: TIMESTAMP
- updated_at: TIMESTAMP
POST /api/auth/register
POST /api/auth/login
POST /api/auth/verify-otp
GET /api/itineraries
POST /api/itineraries
GET /api/itineraries/:id
PUT /api/itineraries/:id
DELETE /api/itineraries/:id
- Docker and Docker Compose
- Node.js v18+
- PostgreSQL (if running locally)
- Clone the repository:
git clone https://github.com/seu-usuario/travelco.git
cd travelco- Configure environment variables:
cp .env.example .env- Start the application:
docker-compose up --build- Local Development
- Frontend runs on
http://localhost:8081 - Backend API runs on
http://localhost:8080 - Database runs on
localhost:5432
- Frontend runs on
-
Planned Features
- Integration with travel booking APIs
- Social sharing capabilities
- Mobile application development
- Advanced AI recommendations
-
Technical Improvements
- Implementation of automated testing
- CI/CD pipeline setup
- Performance optimization
- Enhanced security measures
Please read our contributing guidelines before submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.