Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gichbuoy/real-estate-marketplace
Modern Real Estate Marketplace with MERN, json web tokens authentication and redux toolkit.
https://github.com/gichbuoy/real-estate-marketplace
api crud-application express firebase google-oauth javascript jwt-auth mongodb node-js react react-router-dom redux-toolkit
Last synced: about 1 month ago
JSON representation
Modern Real Estate Marketplace with MERN, json web tokens authentication and redux toolkit.
- Host: GitHub
- URL: https://github.com/gichbuoy/real-estate-marketplace
- Owner: Gichbuoy
- Created: 2023-11-28T11:28:02.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-28T10:29:59.000Z (11 months ago)
- Last Synced: 2024-02-29T07:40:53.664Z (11 months ago)
- Topics: api, crud-application, express, firebase, google-oauth, javascript, jwt-auth, mongodb, node-js, react, react-router-dom, redux-toolkit
- Language: JavaScript
- Homepage: https://find-my-home-gly7.onrender.com/
- Size: 5.91 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Find My Home - Modern Real Estate Marketplace
Welcome to Find My Home, a robust real estate web application built with the MERN stack (MongoDB, Express.js, React, and Node.js). This project provided a comprehensive learning experience for me, as an aspiring full-stack developer.
- It covering advanced authentication, CRUD operations for the MongoDB database, user-friendly features, and advanced search functionality.## Introduction
Find My Home is a modern real estate marketplace where users can browse, search, and manage their property listings through their profiles seamlessly, facilitating editing and updates with ease.- We have varieties of properties for rent, sale or lease. From luxury homes and office spaces, to plots of land and commercial spaces.
## Technologies Used
`Frontend`:
- React
- Redux Toolkit for state management
- JWT for authentication
- Firebase and Google OAuth for secure user access`Backend`:
- Node.js
- Express.js
- MongoDB for database management
- JWT for authentication`Deployment`:
'render' platform for easy and free deployment
## Key Features
1. Advanced Authentication:- Implement `JWT` (Json Web Tokens), `Google OAuth` and `firebase` for secure and seamless user access.
2. CRUD Operations:
- `Create`, `Read`, `Update`, and `Delete` property listings using MongoDB database.
3. User-friendly Features:
- Enhance the user experience with image uploads for property listings and intuitive listing management.
4. Advanced Search Functionality:
- This feature enables users to search by title, limit the search results and apply sorting options, to help users find the properties they're looking for.
5. Authentication Functionality:
- Users can signup and login to the application using their email and password, through the use of JWT.
6. Redux Toolkit:
- For better state management of global states.
7. Redux Toolkit:
- For routes and synamic pages.
## Getting Started
Follow these steps to set up and run the Find My Home project on your local machine. Make sure you have Node.js and MongoDB installed.1. Clone the repository:
```
git clone https://github.com/Gichbuoy/Real-Estate-Marketplace.git
```2. Navigate to the project directory
```
cd Real-Estate-Marketplace
```3. Install the dependencies on the root and client:
```
npm install
```4. Run the application
- On the Root folder run the server:
```
npm run dev
```- Navigate to the client:
```
cd Real-Estate-Marketplace/client
```- Run the client
```
npm run dev
```## Contributing
Contributions are welcomed from the community! If you'd like to contribute to the Real-Estate-Marketplace project.
```
https://github.com/Gichbuoy/Real-Estate-Marketplace/fork
```## License
This project is licensed under the [MIT License.](https://opensource.org/licenses/MIT)### screenshots
`SignIn - Client`
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-signin.png)
`SignUp - Client`
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-signup.png)
`SignIn - API`
![SignIn](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/api-signin.png)
`SignUp - API`
![SignUp](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/api-signup.png)
`Create Property Listing - Client`
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-createlisting.png)
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-createlisting2.png)
`Create Listing - API`
![CreateListing](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/api-createlisting.png)
`Get Listing - Client`
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-getlisting.png)
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-getlisting2.png)
`Get Listing by Id - API`
![Getlisting](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/api-getlistingId.png)
`Search Term - Client`
![Home](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/client-searchterm.png)
`Search Term - API`
![SearchTerm](https://github.com/Gichbuoy/Real-Estate-Marketplace/blob/main/screenshots/api-searchterm.png)