Trip Planner is a modern, AI-powered travel planning web application built with React and Node.js. It helps travelers effortlessly create personalized itineraries, discover top destinations, book accommodations, and connect with fellow travelers. The platform features an interactive chatbot for recommendations, a friend-finding system, and an admin dashboard for property managementβmaking it your one-stop solution for seamless travel experiences.
- Modern Glass-Morphism UI: Beautiful, modern design with glass-morphism effects
- Professional Logo: Custom SVG compass logo representing travel planning
- Mobile-First Navigation: Responsive navbar with auto-close functionality
- Optimized Performance: Cleaned codebase with 56% fewer dependencies
- Enhanced UX: Seamless navigation and improved user experience
| Feature | Description |
|---|---|
| π§ AI Chatbot | Get travel recommendations and tips via an interactive chatbot. |
| πΊοΈ Destination Guide | Explore information about top places, attractions, and landmarks. |
| π€ Find Friends | Connect and chat with other travelers to plan trips together. |
| π¨ Stay Booking Support | Find and book accommodations (Airbnb-style listings). |
| π Personalized Itinerary | AI suggests travel plans based on your interests. |
| π οΈ Admin Dashboard | Admins/hosts can manage property listings and view bookings. |
| π User Authentication | Secure login and registration for travelers and hosts. |
| π¨ Modern UI Design | Glass-morphism effects with beautiful gradients and animations. |
| π Dark Mode | Toggle between light and dark themes. |
| π± Responsive Design | Fully responsive for mobile and desktop with auto-close navigation. |
| πΊοΈ Interactive Maps | Location-based services with Leaflet integration. |
| βοΈ Cloud Database | Uses MongoDB for scalable data storage. |
| Layer | Technology |
|---|---|
| π» Frontend | React.js, TypeScript, Vite, Bootstrap |
| π₯οΈ Backend | Node.js, Express |
| ποΈ Database | MongoDB (Mongoose) |
| π Authentication | Custom Authentication System |
| π§ AI Integration | Custom Chatbot (API endpoint) |
| πΊοΈ Maps | Leaflet.js for interactive maps |
| π¨ Styling | CSS, Bootstrap, Glass-morphism effects |
Note: The application uses MongoDB for data storage and a custom authentication system. The frontend is optimized with modern CSS techniques and responsive design.
- Node.js (v18+ recommended)
- npm (v9+ recommended)
- MongoDB (local or MongoDB Atlas)
git clone <your-repo-url>
cd react_appcd client
npm installcd ../server
npm installcd ../client
npm run devVisit the app at: http://localhost:5173
Open a new terminal and run:
cd server
npm start # or node server.jsThe backend will run at http://localhost:5000
Create a .env file in the server/ directory with the following configuration:
PEXELS_API_KEY=r7JaSmHje1gI1FCme287SgDL5kDLinJRLsqRsXpurLy1gFmEFkSCFGJt
# VITE_GEOAPIFY_API_KEY=https://api.geoapify.com/v2/place-details?id=id%3D514d368a517c511e40594bfd7b574ec84740f00103f90135335d1c00000000920313416e61746f6d697363686573204d757365756d&apiKey=ced9b848bc7e4de2a90ebdf6d8ece6ca
<!-- # Database Configuration
MONGODB_URI=your_mongodb_connection_string
# API Keys
PIXELS_API_KEY=your_pixels_api_key_here
# Optional: JWT Secret for Authentication -->
JWT_SECRET=your_jwt_secret_keyPixels API Setup:
For GSSoC Contributors:
Option 1: Use Shared API Key (Recommended for GSSoC)
- Use the existing API key provided by the project maintainer
- Add the shared API key to the
.envfile asPIXELS_API_KEY - This is the recommended approach for GSSoC contributors
- Note: Rate limits are shared across all contributors
Option 2: Get Your Own API Key (Optional)
- Sign up at Pixels API to get your own API key
- Add your personal API key to the
.envfile asPIXELS_API_KEY - Benefits: Higher rate limits, no sharing with other users
- Free tier available with limited requests per month
- Use this if you plan to work extensively on image-related features
API Usage:
- The API is used for high-quality travel destination images
- Rate limits: Check Pixels API documentation for current limits
- Images are cached to minimize API calls
Note:
- Ensure your MongoDB server is running and update the backend connection string as needed (see
server/server.js).- The application uses a custom authentication system, no external auth provider setup required.
- Keep your API keys secure and never commit them to version control.
| Home Page | Places | Find Friends | Admin Dashboard |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
react_app/
βββ π± client/ # React frontend
β βββ src/
β β βββ components/ # Reusable UI components
β β βββ pages/ # Application pages
β β βββ images/ # Static images
β β βββ utils/ # Utility functions
β βββ site_images_/ # Screenshots for documentation
βββ π₯οΈ server/ # Node.js backend
β βββ config/ # Database configuration
β βββ controllers/ # API controllers
β βββ middleware/ # Custom middleware
β βββ routes/ # API routes
βββ π docs/ # Documentation files
Key Directories:
client/src/components/- Navigation, Footer, PlaceCard, Chatbot, etc.client/src/pages/- Home, Places, FindFriends, Admin, Auth pagesserver/- Express.js API with MongoDB integrationsite_images_/- Application screenshots and documentation assets
We welcome all contributionsβbig or small! See Contributing.md for guidelines.
- Report bugs or UI issues
- Suggest and implement new features
- Improve code structure or performance
- Enhance UI/UX design
- Update documentation
| Feature | Description |
|---|---|
| π§ Smarter AI Chatbot | Enhanced NLP for smarter query handling. |
| π± Mobile App | Native mobile app support. |
| π€ Social Integration | Google/Facebook login and trip sharing. |
| π¬ Real-time Chat | Live chat among travelers. |
| π Geolocation Suggestions | Destinations based on userβs real-time location. |
| π Reward System | Badges and rewards for active users. |
| π¦ PWA Support | Progressive Web App/offline access. |
| π§³ Travel Budget Planner | Tool for managing travel expenses. |
| π¨ Advanced UI Features | More animations, themes, and customization options. |
| π Advanced Search | Filter by price, rating, location, and amenities. |
This project is licensed under the ISC License.
- 56% Dependency Reduction: Removed 14 unused packages for faster builds
- Code Cleanup: Eliminated 500+ lines of unused code
- Asset Optimization: Removed 1.4MB+ of unused images and assets
- Bundle Size Reduction: Significantly smaller final build size
- Modern Glass-Morphism Design: Beautiful translucent effects and gradients
- Professional Logo: Custom SVG compass logo representing travel planning
- Mobile-First Navigation: Responsive navbar with auto-close functionality
- Enhanced Animations: Smooth transitions and hover effects
- Consistent Theming: Unified color scheme and styling
- Removed Dead Code: Eliminated unused components and imports
- Simplified Architecture: Streamlined component structure
- Better Organization: Cleaner file structure and naming conventions
- TypeScript Optimization: Improved type safety and development experience
- Faster Development: Reduced build times and dependency conflicts
- Cleaner IDE: No unused files cluttering the workspace
- Better Debugging: Simplified codebase for easier troubleshooting
- Maintainable Code: Well-structured and documented components
Made with β€οΈ for travelers everywhere!



