RealEstateApp is a full-stack real estate marketplace application built using the MERN stack. The application provides a platform for users to create, edit, and search for real estate listings. It includes advanced features such as JWT authentication, OAuth with Firebase, Redux Toolkit for state management, and pagination for listings. Users can also filter listings based on price and creation date and contact the owners of the estates.
- User authentication using JWT and OAuth with Firebase.
- User authorization for creating and editing listings.
- Advanced search functionality with filtering options based on price and creation date.
- Pagination for listings.
- Users can contact estate owners directly through the platform.
- Responsive design using Tailwind CSS.
- Frontend: React, Tailwind CSS, Redux Toolkit, React Router, Swiper, React Icons
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT, Firebase OAuth
- State Management: Redux Toolkit
- Storage: Firebase
-
Clone the repository:
git clone https://github.com/yourusername/RealEstateApp.git cd RealEstateApp
-
Install dependencies for the backend:
npm install
-
Install dependencies for the frontend:
cd ../client npm install
-
Create a
.env
file in thebackend
directory and add the following environment variables:MONGO=your_mongodb_connection_string JWT_SECRET=your_jwt_secret FIREBASE_API_KEY=your_firebase_api_key
-
Run the backend server:
cd backend npm run dev
-
Run the frontend development server:
cd ../client npm run dev