- π― About The Project
- β¨ Features
- π οΈ Tech Stack
- πͺ Demo
- π§ Installation
- βοΈ Environment Variables
- π Folder Structure
- π API Documentation
- π License
Real Estate Web Application is a comprehensive MERN stack project that enables users to browse, search, and manage property listings with a modern, responsive interface. Built as a full-stack demonstration of contemporary web development practices, featuring secure authentication, dynamic content management, and an intuitive user experience.
The project aims to provide a professional property browsing platform that showcases skills in frontend development, backend API design, database integration, and modern UI/UX principles.
- π Browse property listings with detailed information and image galleries
- π Advanced Search & Filtering by price range, location, and property type
- π Property Management - Add, edit, and delete listings with form validation
- π User Authentication - Secure registration and login system
- π¬ Interactive Chatbot - Predefined Q&A system for user assistance
- π± Fully Responsive Design - Optimized for desktop, tablet, and mobile devices
- β‘ Smooth Animations - Enhanced UX with Framer Motion transitions
- πΎ Data Persistence - Secure MongoDB integration for all user and property data
Check out the live project here: Real Estate Web Application Live Demo
GitHub repository: Real Estate GitHub
- Clone the repo:
git clone https://github.com/pran-ekaiva006/real-estate.gitcd real-estate/client
npm installcd ../server
npm installRun the application:
cd client
npm run devcd ../server
npm startThe application will be available at http://localhost:5173 (frontend) with the API running on http://localhost:5001.
Create .env files in both directories:
VITE_API_BASE_URL=http://localhost:5001MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret_key
PORT=5001
NODE_ENV=developmentreal-estate-main/
βββ .gitignore
βββ LICENSE
βββ README.md
βββ client/ # Frontend React application
β βββ .eslintrc.cjs
β βββ index.html
β βββ package-lock.json
β βββ package.json
β βββ tailwind.config.js
β βββ vite.config.js
β βββ public/ # Static assets
β β βββ hero-image.png
β β βββ logo.png
β β βββ vite.svg
β βββ src/
β βββ App.css
β βββ App.jsx
β βββ index.css
β βββ main.jsx
β βββ components/ # Reusable React components
β β βββ custom/
β β β βββ Header.jsx
β β β βββ Footer.jsx
β β β βββ PropertyCard.jsx
β β βββ ui/
β β βββ button.jsx
β β βββ input.jsx
β β βββ dialog.jsx
β βββ pages/ # Page components
β β βββ Home.jsx
β β βββ Properties.jsx
β β βββ PropertyDetail.jsx
β β βββ Dashboard.jsx
β βββ api/ # API service functions
β β βββ PropertyService.js
β βββ context/ # React Context
β β βββ AuthContext.jsx
β βββ utils/ # Utility functions
β βββ helpers.js
β
βββ server/ # Backend Node.js application
βββ controllers/ # Route handlers
β βββ authController.js
β βββ propertyController.js
βββ models/ # Database models
β βββ User.js
β βββ Property.js
βββ routes/ # API routes
β βββ auth.js
β βββ properties.js
βββ middleware/ # Custom middleware
β βββ authMiddleware.js
βββ utils/ # Utility functions
β βββ database.js
βββ server.js # Application entry point
βββ package.json- File Upload: Property images upload with validation
- Pagination: All list endpoints support pagination
- Filtering: Advanced filtering by price, location, property type
- Authentication: JWT-based secure authentication system
This Project is Licensed under the MIT License, see LICENSE for details.
