Website is live and running at real-esate
Note
- Admin Dashboard is only accessible to authorized users.However, User has to register an account in order to create a listing of their property.
- The project also includes a PWA extension, allowing you to easily access this website on your phone and have the same experience as when using the regular app.
- Feel free to visit.
- User can create a listing as per their convenience. ✔
- The platform offers users the flexibility to put their property up for rent or sale. ✔
- Users have the opportunity to share their feedback about the property or their stay in the house. ✔
- Search functionality is also included that allows user to search particular product. ✔
- Users can create, edit or delete their commment along with liking functionality. ✔
- Users can search properties with the help of custom functionalities. ✔
- User can also upload their property images while listing for rent or sale. ✔
- The platform also offers Users the functionality to contact landlord of the listing for further discussion regarding property.
- Admin has the flexibility to supervise all the listings. ✔
- Admin can can edit, delete user's comment and much more. ✔
- Admins can delete user's listing if they find something suspicious ✔
- Typescript
- Docker
- PWA
- Nginx
- Mongoose
- MongoDb
- React
- Express.js
- Nodejs
- Tailwind CSS
- Redux toolkit
- JSON Web Token(JWT)
- Firebase Storage
- Bcrypt
Caution
Make sure to assign the environment variables before proceeding further.
DATABASE_URL
=Your supabase database url, It could be achieved by creating a database in mongodb in order to run this project
JWT_Token
=It could be any secret key
FIREBASE_API_KEY
=You can obtain firebase api key by creating an account on firebase
🐳 DOCKER
Important
Make sure to include .env file for both server and client directory before the build.
Build image using docker compose as It will spin up necessary containers based on each configured docker compose file.
# It will build image for development stage
docker compose -f compose.yaml -f compose.dev.yaml up -d --build
Open http://localhost:3000 for development stage as It will allow you to start making changes inside the webpage.
# It will build image for production stage
docker compose -f compose.yaml -f compose.prod.yaml up -d --build
You can also visit http://localhost and check for production stage since It's running on Nginx for reverse proxy so It will serve static html files on deafult port 80.
npm install
npm run dev (for development server)
npm run dev
# or
yarn dev
# or
pnpm dev
npm run build (for Production)
npm run preview (To View Production Server )
npm install
npm run dev (for development server)
npm run dev
# or
yarn dev
# or
pnpm dev
npm run build (for Production)
npm run preview (To View Production Server )
Open http://localhost:3000 with your browser to see the result.
Thank you
By Aryan Kalra