This repository contains the source code for a modern real estate marketplace application built using the MERN stack (MongoDB, Express, React, Node.js), with additional features like JWT-based authentication, Redux Toolkit for state management, and Firebase integration.
- Seamless User Experience: A responsive and user-friendly interface designed with React and Tailwind CSS.
- Secure Authentication: JWT-based authentication for secure access and data protection.
- Global State Management: Efficiently managed application state using Redux Toolkit.
- Real-time Data: Integration with Firebase for real-time data updates and notifications.
- Responsive Design: Ensures compatibility across various devices and screen sizes.
- Optimized Performance: Code is optimized for speed and scalability, with a focus on providing a smooth user experience.
- Frontend: React, Tailwind CSS
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT (JSON Web Tokens)
- State Management: Redux Toolkit
- Real-time Services: Firebase
- Arrays: For storing collections like property listings, user details, etc.
- Objects: Key-value pairs for managing entities such as properties and users.
- Maps: For ordered key-value storage where iteration is required.
- Sets: For managing unique collections, e.g., unique user roles.
- Queues/Stacks: For sequential operations or navigation handling.
- Trees: For hierarchical data like category trees or routing paths.
- Graph: To model relationships between entities, like users and properties.
- Hash Tables: For efficient lookups and caching.
-
Clone the repository:
git clone https://github.com/arjunkr403/Mern-state.git cd Mern-state
-
Install dependencies:
npm install
-
Setup environment variables:
- Create a
.env
file in the root directory. - Add the necessary environment variables (e.g., MongoDB URI, JWT secret, Firebase config).
- Create a
-
Run the application:
npm run dev
This will start both the backend and frontend servers.
- User Authentication: Sign up and login functionality with JWT tokens.
- Browse Properties: Users can browse available properties with filtering options.
- Add Listings: Authorized users can add new property listings.
- Real-time Updates: Get real-time notifications on property updates via Firebase.
Contributions are welcome! Please fork the repository and create a pull request with your changes.
For any queries or issues, feel free to reach out via LinkedIn.