Skip to content

aragrishah/SmartRent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SmartRent - Property Management System

SmartRent is a robust, full-stack Java EE web application designed to simplify the rental process for property owners and tenants in Surat. The platform features a secure, role-based architecture with dedicated dashboards for Admins, Landlords (Sellers), and Tenants (Buyers).

🚀 Features

👤 User Roles & Security

  • Role-Based Access Control (RBAC): Distinct dashboards and permissions for Admin, Seller, and Buyer roles.
  • Secure Authentication: Custom session-managed login and signup system with automatic redirection.
  • Access Guards: Server-side logic to prevent unauthorized URL manipulation between roles.

📊 Dynamic Dashboards

  • Admin Dashboard: High-level overview of total revenue, active users, and system-wide occupancy rates.
  • Seller (Landlord) Portal: Manage listings, track monthly rental income, and monitor property statuses (Available, Pending, Rented).
  • Buyer (Tenant) Portal: Browse real-time Surat property listings, save favorites, and manage active rental bookings.

🏠 Property Management

  • Transaction Engine: Real-time booking system that updates property availability upon rental.
  • Advanced Filtering: Browse properties by location, type (Apartment, House, Villa), and price range.
  • Inventory Control: Automated status transitions from 'Available' to 'Pending' upon tenant interest.

🛠️ Technical Stack

  • Backend: Java (Servlets v4.0)
  • Frontend: JSP (JavaServer Pages), CSS3 (Custom Flexbox/Grid UI), FontAwesome
  • Database: MySQL (JDBC Connection)
  • Server: Apache Tomcat v9.0
  • Version Control: Git & GitHub

📂 Project Structure

SmartRent/
├── src/main/java/             # Java Backend
│   └── com/smartrent/
│       ├── controller/        # Servlets (Logic)
│       └── util/              # Database Configuration
├── src/main/webapp/           # Frontend Files
│   ├── WEB-INF/               # Private config & Libraries
│   ├── admin_dashboard.jsp    # Admin UI
│   ├── seller_dashboard.jsp   # Landlord UI
│   ├── buyer_dashboard.jsp    # Tenant UI
│   └── login.jsp              # Entry Point
└── pom.xml                    # Dependency Management

⚙️ Installation & Setup

  1. Clone the Repository:
    git clone https://github.com/aragrishah/SmartRent.git
  2. Database Setup:
    • Import the provided SQL script into MySQL Workbench.
    • Ensure the smartrent database is created and populated with the default users.
  3. Configure Connection:
    • Open src/main/java/com/smartrent/util/DBConnection.java.
    • Update the database URL, username, and password to match your local setup.
  4. Deploy:
    • Import as a Dynamic Web Project in Eclipse.
    • Add the MySQL Connector/J jar to WEB-INF/lib.
    • Run on Apache Tomcat v9.0.

About

SmartRent is a full-stack Java web application for streamlined property management, featuring a secure role-based architecture (Admin, Landlord, Tenant) and dynamic dashboards built with Servlets, JSP, and MySQL.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages