Report
Report
Introduc on
Project Title: House Rent App using MERN
Team Members:
o Chandrashekar Deverche y - Project Lead / Full Stack Developer
o Delli Ganesh - Frontend Developer
o Chandra Soodan - Backend Developer
o Chappidi Rohan Reddy - Database Specialist
2. Project Overview
Purpose: The House Rent App is designed to simplify the rental process for property
owners and tenants by offering a comprehensive digital pla orm. It aims to
streamline communica on, facilitate easy property management, and enhance user
experience in the rental market. The applica on serves as a centralized system where
property owners can manage lis ngs, and tenants can browse and book proper es
based on their preferences.
Features:
o User Management: Role-based user management, enabling dis nct
func onali es for admins, property owners, and tenants.
o Property Lis ngs: Property owners can list, update, and manage their rental
proper es, including images, pricing, and detailed descrip ons.
o Search Func onality: Advanced search filters based on loca on, price range,
property type, and ameni es.
o Booking Management: Booking requests, status updates, and tracking
features for tenants, with no fica on systems in place.
o Admin Oversight: Admins manage pla orm policies, approve property lis ngs,
handle disputes, and ensure data integrity.
o Virtual Tours: Incorporates virtual tour capability, allowing tenants to explore
proper es remotely before visi ng.
o Automated Payment Reminders: No fica on system to alert tenants about
payment deadlines and avoid late fees.
o Dynamic Pricing Model: Allows property owners to adjust rental prices based
on market trends and demand.
o Community Forums: A dedicated sec on for tenants and owners to share
insights, experiences, and advice.
3. Architecture
Frontend:
o Developed using React.js, the frontend leverages state management (e.g.,
Redux) for seamless data flow and interac vity.
o Integra on of React Router for smooth naviga on between pages without
reloading.
o Responsive and adap ve design using CSS3 and Bootstrap, ensuring a
consistent user experience across various devices.
o U lizes component-based architecture for be er code maintainability and
scalability.
Backend:
o Built with Node.js and Express.js, providing a robust REST API framework for
handling client-server communica on.
o Modular structure with controllers, services, and middleware to separate
concerns and improve code maintainability.
o U lizes Express.js middleware for error handling, logging, authen ca on, and
valida on.
o Implements secure server-side opera ons, such as input valida on and
sani za on, to prevent vulnerabili es.
Database:
o U lizes MongoDB as the primary database for storing data, including user
profiles, property lis ngs, booking details, and transac ons.
o Designed with a flexible schema to accommodate various property types, user
roles, and dynamic content.
o Implements efficient indexing strategies to op mize search queries and data
retrieval.
o Uses Mongoose for object modeling and data valida on, enforcing schema
consistency and facilita ng database interac ons.
4. Setup Instruc ons
Prerequisites:
o Node.js (version 16.x or higher)
o MongoDB (version 5.x or higher)
o npm (Node package manager)
o Op onal: Docker for containeriza on.
Installa on:
1. Clone the repository:
bash
git clone h ps://github.com/Deverche yChandrashekar-18/House-rent-
app-using-MERN.git
2. Navigate to the project directory:
bash
cd House-rent-app-using-MERN
3. Install dependencies for both client and server:
Client:
bash
cd client
npm install
Server:
bash
cd server
npm install
4. Set up environment variables in a .env file in the server directory (e.g.,
database URI, JWT secret, API keys).
5. Folder Structure
Backend Frontend