EzyExplorer - Discover India's Hidden Gems
A travel exploration platform that helps users discover destinations, connect with local buddies, plan visits, and share experiences.
- 🏞️ Destination Discovery - Explore beaches, mountains, heritage sites and more
- 👥 Local Buddies - Connect with local guides and fellow travelers
- 📅 Trip Planning - Plan and manage your visits
- 💬 Reviews & Comments - Share experiences and get recommendations
- 💰 Expense Tracking - Track group expenses during trips
- 🔔 Notifications - Stay updated on bookings and activities
- ❤️ Wishlist - Save your favorite destinations
- Node.js with Express.js
- MongoDB with Mongoose ODM
- JWT for authentication
- bcryptjs for password hashing
- HTML5/CSS3/JavaScript
- Responsive Design
- Font Awesome icons
ezyexplorer/
├── backend/ # Node.js Express API
│ ├── models/ # Database models
│ ├── controllers/ # Route controllers
│ ├── routes/ # API routes
│ ├── middleware/ # Custom middleware
│ └── config/ # Database configuration
├── frontend/ # Client-side application
└── README.md
- Node.js (v14 or higher)
- MongoDB
- npm or yarn
-
Clone the repository
git clone <repository-url> cd ezyexplorer
-
Setup Backend
cd backend npm install -
Environment Variables Create a
.envfile in the backend directory:PORT=5000 MONGODB_URI=mongodb://localhost:27017/ezyexplorer JWT_SECRET=your_jwt_secret_key
-
Start the Backend Server
npm start
-
Setup Frontend Open
frontend/finalized ezyexplorer/index.htmlin your browser or serve it using a local server.
To populate the database with sample data:
cd backend
npm run seed:all- Authentication:
/api/auth - Destinations:
/api/destinations - Bookings:
/api/bookings - Reviews:
/api/reviews - Users:
/api/users - Buddies:
/api/buddies - Visits:
/api/visits - Wishlist:
/api/wishlist
npm start- Start the development server.npm run dev- Start with nodemon (auto-restart)npm run prod- Start production servernpm run seed- Seed basic datanpm run seed:destinations- Seed destination datanpm run seed:all- Seed all data
Happy Exploring! 🌟