HeartRoofers is a user-friendly web application that simplifies the process of finding and listing rental properties. Whether you're a tenant looking for a new home or a property owner wanting to reach potential tenants, HeartRoofers provides a seamless platform to connect both parties.
- Advanced Searching – Quickly find properties based on location, price and state .
- Verified Listings – All listings are verified to ensure authenticity and reliability.
- Direct Communication – Contact property owners directly through the platform.
- Responsive Design – Fully responsive interface for smooth experience on desktop and mobile devices.
Experience HeartRoofers live: https://heartroofers.onrender.com/
- Frontend: HTML5, CSS3, JavaScript
- Backend: Node.js, Express.js
- Database: MongoDB Atlas
- Hosting: Render.com
- Cloud Storage: Cloudinary (for images)
graph TD
Client[Browser: EJS, CSS, JS]
Server[Express/Node.js Server]
Auth[Passport.js Auth]
DB[(MongoDB Atlas)]
Cloud[Cloudinary Storage]
Valid[Joi Validation]
Client <--> Server
Server <--> Auth
Server <--> DB
Server <--> Cloud
Server --> Valid
graph LR
H[Home Page] --> S[Signup/Login]
H --> E[Explore Listings]
S --> H
E --> D[Listing Details]
D --> R[Add/Delete Review]
D --> OW[Owner: Edit/Delete Listing]
H --> NL[List New Property]
I've recently enhanced the platform with premium UI/UX features and robust security:
- Premium Confirmation UI: Replaced native browser alerts with a custom, glassmorphism-styled confirmation modal for all critical actions (Logout, Deletion).
- Modern Notification System: Overhauled the alert system with smooth animations, contextual icons, and glassmorphism effects.
- Robust Phone Validation: Implemented strict 10-digit phone number validation on both frontend and backend (Joi regex).
- Streamlined Onboarding: Added auto-login functionality after successful signup and context-aware CTA buttons on the home page.
To run HeartRoofers locally:
-
Clone the repository:
git clone https:https://github.com/divysaxena24/HeartRoofers.git
cd HeartRoofers -
Install dependencies:
npm install -
Configure environment variables:
Create a.envfile in the root directory and add:
PORT=8080
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key -
Start the development server:
node app.js -
Visit http://localhost:3000 to see the app in action.
Screen.Recording.2026-01-09.223802.mp4
We welcome contributions to improve HeartRoofers. To contribute:
-
Fork the repository.
-
Create a new branch:
git checkout -b feature/YourFeature -
Make your changes and commit them:
git commit -m "Add new feature" -
Push to your branch:
git push origin feature/YourFeature -
Open a Pull Request and describe your changes.