Live Demo: https://horizon-hub.onrender.com
Horizon Hub is a full-stack property listing web application that allows users to list, explore, and manage properties like houses, hotels, and rentals. Built with the MERN (MongoDB, Express, Node.js) stack and styled with Bootstrap + EJS for a clean and responsive UI.
- 🏡 Property Management – Add, view, edit, and delete property listings
- 🔐 Authentication – Secure login & signup with Passport.js
- 📷 Image Uploads – Upload property images via Cloudinary
- 📍 Location Mapping – Integration for better visualization
- 🧾 RESTful API – Clean and scalable backend structure
- 📱 Responsive UI – Works seamlessly on mobile, tablet, and desktop
Frontend:
- EJS Templating Engine
- Bootstrap 5
Backend:
- Node.js
- Express.js
- MongoDB (Mongoose ODM)
- Passport.js (Authentication)
- Cloudinary (Image Hosting)
DevOps & Tools:
- Render (Deployment)
- GitHub (Version Control)
git clone https://github.com/CodxAbhay/Horizon-Hub.git
cd Horizon-Hubnpm installCreate a .env file in the root directory with the following:
PORT=5000
MONGO_URI=your_mongodb_connection_string
SESSION_SECRET=your_secret_key
CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name
CLOUDINARY_API_KEY=your_cloudinary_api_key
CLOUDINARY_API_SECRET=your_cloudinary_api_secretnpm startVisit 👉 http://localhost:5000
Horizon-Hub/
│-- config/ # Passport & DB configurations
│-- models/ # Mongoose schemas
│-- routes/ # Express routes
│-- views/ # EJS templates
│-- public/ # Static files (CSS, JS, Images)
│-- app.js # Main app entry point
│-- package.json
Contributions are always welcome!
- Fork the repository
- Create your feature branch (
git checkout -b feature-xyz) - Commit your changes (
git commit -m "Add new feature") - Push to the branch (
git push origin feature-xyz) - Open a Pull Request
- 🌍 Integration with Google Maps API
- ⭐ Property ratings & reviews
- 🛒 Booking system for rentals & hotels
- 📊 Admin dashboard with analytics
- 🤖 AI/ML-based Price Prediction for properties (upcoming 🚀)
| Method | Endpoint | Description | Auth Required |
|---|---|---|---|
| GET | /properties | Get all properties | ❌ No |
| POST | /properties | Add new property | ✅ Yes |
| GET | /properties/:id | Get single property | ❌ No |
| PUT | /properties/:id | Update property details | ✅ Yes |
| DELETE | /properties/:id | Delete property | ✅ Yes |
| POST | /auth/register | User registration | ❌ No |
| POST | /auth/login | User login | ❌ No |
| GET | /auth/logout | Logout | ✅ Yes |
👉 If you like this project, don’t forget to ⭐ the repo on GitHub!



