Homigo is a full-stack web application for property listing and rental services. Users can browse properties, register new listings, and connect with property owners in a seamless, easy-to-use platform.
- 🔐 User authentication and login system
- 🏡 Property listing creation with image uploads
- 🔍 Search and filter functionality
- 📁 File upload support using Multer and Cloudinary
- 📸 Gallery view for property images
- 🧾 Booking or inquiry management (if applicable)
- 🖼️ Server-side rendering using EJS
- 💾 MongoDB + Mongoose integration
| Category | Tools & Libraries |
|---|---|
| Frontend | HTML, CSS, EJS Templates |
| Backend | Node.js, Express.js |
| Database | MongoDB, Mongoose |
| Authentication | Express-session, Passport.js |
| File Uploads | Multer, Cloudinary |
| View Engine | EJS |
git clone https://github.com/btwitsshivanshu/Homigo.git
cd Homigonpm installCreate a .env file and add your MongoDB URI, Cloudinary keys, and session secret.
Example:
MONGO_URI=your_mongodb_uri
CLOUD_NAME=your_cloudinary_cloud_name
CLOUD_API_KEY=your_cloudinary_api_key
CLOUD_API_SECRET=your_cloudinary_api_secret
SESSION_SECRET=your_random_secretnpm startVisit: http://localhost:3000
Homigo/
├── controllers/ # Route handlers
├── init/ # Initialization files
├── middleware/ # Custom middlewares
├── models/ # Mongoose models
├── public/ # Static assets
├── routes/ # App routes
├── utils/ # Helper functions
├── views/ # EJS templates
├── uploads/ # File storage (if local)
├── app.js # Main entry point
├── schema.js # Mongoose schemas
└── cloudConfig.js # Cloudinary setup
Pull requests are welcome! If you find any bugs or have suggestions for improvements, feel free to create an issue or submit a PR.
This project is open-source and free to use under the MIT License.
Developed with ❤️ by btwitsshivanshu