A modern, responsive travel booking platform built with React, TypeScript, and Tailwind CSS. This application allows users to browse destinations, make bookings, and process payments securely.
- 🌍 Browse popular travel destinations
- 🔍 Search and filter destinations
- 📅 Book trips with date selection
- 👥 User authentication system
- 💳 Secure payment processing with Stripe
- 🌓 Dark/Light theme support
- 📱 Fully responsive design
- 🗺️ Interactive location maps
- ✨ Smooth animations with Framer Motion
- Frontend Framework: React with TypeScript
- Styling: Tailwind CSS
- Routing: React Router
- Icons: Lucide React
- Testing: Jest
- Animations: Framer Motion
- Payment Processing: Stripe
- Build Tool: Vite
- Deployment: Netlify
- Clone the repository
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Build for production:
npm run build
Create a .env
file in the root directory with the following variables:
VITE_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
VITE_GEOAPIFY_API_KEY=your_geoapify_api_key
src/
├── components/ # React components
├── hooks/ # Custom React hooks
├── types/ # TypeScript type definitions
├── utils/ # Utility functions
├── lib/ # Third-party library configurations
└── config/ # Application configuration
- Hero: Landing page hero section with search functionality
- Destinations: Grid display of available travel destinations
- BookingPage: Detailed view of destinations with booking form
- PaymentForm: Secure payment processing with Stripe integration
- UserDashboard: User profile and booking management
- ThemeToggle: Dark/light mode switcher
The application includes a complete authentication system with:
- User registration
- Login/logout functionality
- Protected routes
- User profile management
Users can:
- View destination details
- Select travel dates
- Choose number of guests
- View pricing information
- Process payments securely
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Open a Pull Request
Visit the live application: TravelCo Demo
- Images from Unsplash
- Icons from Lucide
- Maps integration using OpenStreetMap