https://github.com/ricky-saha/propertyplus
A modern real estate platform built with MERN stack that connects property buyers with owners directly. Features real-time chat and seamless property management.
https://github.com/ricky-saha/propertyplus
node-js prisma-orm reactjs socket-io
Last synced: about 2 months ago
JSON representation
A modern real estate platform built with MERN stack that connects property buyers with owners directly. Features real-time chat and seamless property management.
- Host: GitHub
- URL: https://github.com/ricky-saha/propertyplus
- Owner: Ricky-saha
- Created: 2025-02-13T08:15:14.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-20T19:51:38.000Z (over 1 year ago)
- Last Synced: 2025-02-20T20:33:32.864Z (over 1 year ago)
- Topics: node-js, prisma-orm, reactjs, socket-io
- Language: JavaScript
- Homepage:
- Size: 642 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PropertyPlus - Real Estate Platform
## Project Description
A modern real estate platform built with MERN stack that connects property buyers with owners directly. Features real-time chat and seamless property management.
## Features
- User Authentication & Authorization
- Property Listing Management
- Real-time Chat using Socket.io
- State Management with Zustand
- Database Management with Prisma ORM
- Image Upload & Management
- Responsive Design
## Tech Stack
### Frontend
- React.js
- JavaScript
- SCSS
- Zustand (State Management)
- Socket.io-client
- Axios
- React Router DOM
### Backend
- Node.js
- Express.js
- MongoDB
- Prisma (ORM)
- Socket.io
- JWT Authentication
- cloudinary
## Screenshots
### Homepage

### Property Lists

### Property Details

### Chat Interface

### Profile Page

## Getting Started
### Prerequisites
- Node.js 17.0 or later
- MongoDB
- npm
### Installation
1. Clone the repository
```bash
git clone =https://github.com/Ricky-saha/PropertyPlus
cd propertyplus
```
2. Install Dependencies
```bash
# Backend dependencies
cd api
npm install
# Frontend dependencies
cd client
npm install
# socket dependencies
cd socket
npm install
```
3. Configure Environment Variables
Create `.env` files in backend directories:
```env
# Backend .env
DATABASE_URL=""
JWT_SECRET_KEY =
CLIENT_URL = http://localhost:5173
5. Start Development Servers
```bash
# Start backend server
cd api
nodemon app.js
# Start socket server
cd socket
nodemon app.js
# Start frontend server
cd client
npm run dev
```
## Key Features
### Property Management
- Create, read, update, and delete property listings
- Upload multiple property images
- Advanced search and filtering
- Property favorites system
### Real-time Chat
- Instant messaging between buyers and sellers
- Message status indicators
- Chat history preservation
- Real-time notifications
### User Dashboard
- Property listing management
- Chat conversations
- Profile management
## State Management with Zustand
The application uses Zustand for state management. Example store structure:
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
- [React Documentation](https://reactjs.org/)
- [Node.js](https://nodejs.org/)
- [MongoDB](https://www.mongodb.com/)
- [Prisma](https://www.prisma.io/)
- [Socket.io](https://socket.io/)