A full-stack travel planning application with collaborative trip planning features.
vibecation/
├── backend/ # FastAPI backend
├── frontend/ # React frontend
├── documentation/ # API and design documentation
└── docker-compose.yml
- Docker and Docker Compose
- Node.js 18+ (for local development)
- Python 3.11+ (for local development)
- Clone the repository
- Create a
.envfile in the root directory with your Azure OpenAI credentials:
cp .env.example .env
# Then edit .env and add your Azure OpenAI credentialsRequired environment variables:
AZURE_OPENAI_API_KEY- Your Azure OpenAI API keyAZURE_OPENAI_ENDPOINT- Your Azure OpenAI endpoint URL (e.g.,https://your-resource-name.openai.azure.com)AZURE_OPENAI_API_VERSION- API version (default:2024-02-15-preview)
- Run the following command:
docker-compose up --buildThis will start:
- MongoDB on port 27017
- Backend API on port 8000
- Frontend on port 3000
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
cd backend
pip install -r requirements.txt
uvicorn main:app --reloadcd frontend
npm install
npm run dev- Login Page (
/login): User authentication - Registration Page (
/register): New user registration with validation - Dashboard (
/dashboard): Trip management and overview
GET /login- User loginPOST /users- Create new userGET /users/check-availability- Check username/email availabilityGET /users/{userID}- Get user profileGET /dashboard- Get user's tripsGET /tripinfo- Get trip informationPOST /createtrip- Create new tripDELETE /trips/{tripID}- Delete trip
- Backend: FastAPI, Motor (MongoDB async driver), bcrypt
- Frontend: React, React Router, Axios, Vite
- Database: MongoDB
- Containerization: Docker, Docker Compose
- Main background: Light (#FAFAFA/white)
- Details accent: Neon purple-pink (#FF00FF/#FF1493)
- See
documentation/frontend_layout.mdfor complete style schema