/Property-Management-Dashboard

The Property Management Dashboard repository provides a user-friendly interface for managing and monitoring various aspects of a property, such as rent collection, maintenance requests, and tenant information.

Primary LanguageTypeScript

Property-Management-Dashboard

Welcome to the Property Management Dashboard! This project is a web application designed to help property managers efficiently manage their properties, tenants, and maintenance requests. It provides a user-friendly interface for property managers to perform various tasks related to property management in a streamlined manner.

Features

  • Dashboard: A centralized dashboard that provides an overview of all properties, tenants, and maintenance requests. It allows property managers to quickly access important information and manage tasks efficiently.

  • Property Management: Property managers can add, edit, and delete properties, and view property details such as rent, lease status, and maintenance history. They can also track rent payments and generate reports for property owners.

  • Tenant Management: Property managers can add, edit, and delete tenants, and view tenant details such as contact information, lease agreements, and payment history. They can also send notifications and communicate with tenants through the platform.

  • Maintenance Requests: Tenants can submit maintenance requests through the application, and property managers can review and prioritize them. Property managers can assign maintenance tasks to contractors, track progress, and update status.

Tech Stack

The Property Management Dashboard is built using modern web technologies. The tech stack used in this project includes:

  • Front-end: React, a popular JavaScript library for building user interfaces. It provides a fast and responsive user experience with a modular and reusable component-based architecture.

  • Back-end: Node.js, a JavaScript runtime that allows server-side execution of JavaScript code. It provides a scalable and efficient platform for building server-side applications. The back-end also uses Express, a widely used Node.js framework for building web applications.

  • Database: MongoDB, a NoSQL document-oriented database that provides flexibility and scalability for storing and managing data. It allows efficient handling of large amounts of data and provides robust data retrieval and manipulation capabilities.

  • Authentication & Authorization: JSON Web Tokens (JWT) for secure authentication and authorization of users. It provides a stateless and secure way to authenticate and authorize users, ensuring that only authorized users can access protected resources.

Usage

The Property Management Dashboard is designed for property managers to efficiently manage their properties, tenants, and maintenance requests. Users can access the application through a web browser and interact with the user-friendly interface to perform various tasks related to property management. Here are some usage scenarios:

  1. Adding a Property: Property managers can use the dashboard to add a new property by providing property details such as address, rent, and lease status. They can also upload property images and associate tenants with the property.

  2. Managing Tenants: Property managers can use the dashboard to manage tenants by adding, editing, and deleting tenant information. They can also view tenant details, track rent payments, and communicate with tenants through the platform.

  3. Handling Maintenance Requests: Property managers can use the dashboard to review and prioritize maintenance requests submitted by tenants. They can assign maintenance tasks to contractors, track progress, and update status. Tenants can also view the status of their maintenance requests.

  4. Generating Reports: Property managers can generate reports for property owners, such as rent payment reports, property occupancy reports, and maintenance history reports. These reports provide valuable insights for property owners to make informed decisions.

Getting Started

To run the Property Management Dashboard locally, follow these steps:

  1. Clone the repository to your local machine.
  2. Navigate to the client folder for the front-end React application and run npm install to install the dependencies.
  3. Run npm start to start the front-end development server.
  4. Navigate to the server folder for the back-end Node.js application and run npm install to install the dependencies.
  5. Configure the MongoDB connection in the config folder with your own MongoDB URI.