Estate Craft is a real estate management platform using the MERN stack. It supports admins, employees, sellers, and buyers. The platform is secure, responsive, and easy to use.
- Multi-User Roles: Buyer, Seller, Employee, Admin
- Authentication & Authorization (JWT & Redux)
- Secure Platform
- User Confidentiality
- Feedback System
- Advertisement Page for Seller
- Property Details & Images
- Dashboards (Seller, Employee, Admin)
- Admin Analytics
- Payment Integration (Stripe)
- Save Favourites
- Buy Properties (Land, House, Villa, Apartment)
- Responsive Design
- User-Friendly Interface
- React.js
- Redux
- HTML, CSS, JavaScript
- Axios
- React Router
- Styled Components
- Toast Notifications
- Node.js
- Express.js
- MongoDB & Mongoose
- JWT (Authentication)
- Multer (File Uploads)
- Stripe (Payments)
- Redis (Caching)
- Swagger (API Docs)
- dotenv (Environment Variables)
- bcrypt (Password Hashing)
- CORS
- Docker
- Docker Compose
/backend # Node.js/Express backend
/frontend # React frontend
/docker-compose.yml
/README.md
- Download or clone the project.
- Make sure you have Node.js, npm, and Docker installed.
Open two terminals.
cd backend
npm install
npm run devcd frontend
npm install
npm startMake sure Docker is running.
docker-compose up --build- Frontend: http://localhost:3000
- Backend API: http://localhost:5000
To stop:
docker-compose down- Copy
.env.exampleto.envin/backendand fill in your values (MongoDB URI, JWT secret, Stripe key, etc).
controllers/- All backend logic (Buyer, Seller, Admin, Employee)models/- Mongoose models (User, Property, Advertisement, etc)routes/- API routes for all modulesmiddlewares/- Auth, upload, cache etc.utils/- Redis, helpersswagger/- API documentation
src/components/- All React components (BuyerPage, SellerPage, AdminPage, etc)src/redux/- Redux store and slicessrc/services/- API calls and authsrc/assets/- Images and iconssrc/styles/- Styled components
- Sellers can only advertise if previous request is rejected or not made.
- All main features are available from the dashboard.