Skip to content

JoelHJames1/AIRealtor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI Realtor - Rental Property Management System

A comprehensive rental property management system with AI-powered assistance, built with ASP.NET Core 8.0 and React.

🚀 Features

Core Functionality

  • Property Management: Add, edit, and manage rental properties and units
  • Tenant Management: Complete tenant lifecycle management with role-based access
  • Lease Management: Create, track, and manage rental leases
  • Payment Tracking: Monitor rent payments, track overdue accounts, and generate reports
  • Maintenance Requests: Submit and track maintenance tickets with priority levels

AI-Powered Features

  • AI Assistant: Integrated AI chat assistant powered by Akash Network's DeepSeek-R1-0528 model
  • Smart Agent Framework: Specialized agents for different request types:
    • PlumbingAgent - Handles water and plumbing issues
    • ElectricalAgent - Manages electrical problems
    • HVACAgent - Deals with heating and cooling requests
    • ApplianceAgent - Addresses appliance repairs
    • GeneralAgent - Handles general maintenance
    • EmergencyAgent - Manages urgent situations
  • Real-time Communication: SignalR integration for instant messaging
  • Role-based AI Responses: Different AI behaviors for Admins, Property Managers, and Tenants

🛠️ Technology Stack

Backend

  • Framework: ASP.NET Core 8.0
  • Database: Azure SQL Database
  • Authentication: JWT Bearer tokens with ASP.NET Core Identity
  • Real-time: SignalR for WebSocket communication
  • AI Integration: Akash Network API with DeepSeek-R1-0528
  • ORM: Entity Framework Core
  • API Documentation: Swagger/OpenAPI

Frontend

  • Framework: React 18 with TypeScript
  • UI Library: Material-UI (MUI) v5
  • State Management: React Context API
  • Routing: React Router v6
  • Animations: Framer Motion
  • Charts: Recharts
  • HTTP Client: Axios
  • Real-time: SignalR JavaScript client

📁 Project Structure

RentalAIAdminSystem/
├── backend/
│   └── RentalAIAdmin.Api/
│       ├── Controllers/
│       │   ├── AuthController.cs
│       │   ├── AIChatController.cs
│       │   ├── PropertiesController.cs
│       │   ├── UnitsController.cs
│       │   ├── LeasesController.cs
│       │   ├── PaymentsController.cs
│       │   └── UsersController.cs
│       ├── Models/
│       ├── Services/
│       ├── Data/
│       └── Program.cs
├── frontend/
│   └── rental-ai-frontend/
│       ├── src/
│       │   ├── components/
│       │   │   ├── Dashboard.tsx
│       │   │   ├── AIAssistant.tsx
│       │   │   ├── PropertyManagement.tsx
│       │   │   ├── LeaseManagement.tsx
│       │   │   ├── PaymentTracking.tsx
│       │   │   └── UserManagement.tsx
│       │   ├── services/
│       │   └── App.tsx
│       └── package.json
└── database_schema.sql

🚀 Getting Started

Prerequisites

  • .NET 8.0 SDK
  • Node.js 18.x or higher
  • Azure subscription (for deployment)
  • SQL Server or Azure SQL Database

Backend Setup

  1. Clone the repository:
git clone https://github.com/JoelHJames1/AIRealtor.git
cd AIRealtor
  1. Navigate to the backend directory:
cd backend/RentalAIAdmin.Api
  1. Update the connection string in appsettings.json:
{
  "ConnectionStrings": {
    "DefaultConnection": "Your-Connection-String-Here"
  }
}
  1. Run database migrations:
dotnet ef database update
  1. Run the backend:
dotnet run

The API will be available at https://localhost:5001

Frontend Setup

  1. Navigate to the frontend directory:
cd frontend/rental-ai-frontend
  1. Install dependencies:
npm install
  1. Create a .env file:
REACT_APP_API_URL=https://localhost:5001
  1. Start the development server:
npm start

The application will be available at http://localhost:3000

🌐 Deployment

Azure Deployment

The project is configured for deployment to Azure:

  • Backend: Azure App Service (Linux)
  • Frontend: Azure Static Web Apps
  • Database: Azure SQL Database

Deployment can be done via:

  1. GitHub Actions (workflow included)
  2. Azure CLI
  3. Visual Studio Code Azure extensions

🔑 Environment Variables

Backend

  • ASPNETCORE_ENVIRONMENT: Development/Production
  • ConnectionStrings__DefaultConnection: Database connection string
  • Jwt__Key: JWT signing key
  • Jwt__Issuer: JWT issuer
  • Jwt__Audience: JWT audience
  • AkashApi__Endpoint: Akash API endpoint
  • AkashApi__ApiKey: Akash API key

Frontend

  • REACT_APP_API_URL: Backend API URL

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

👤 Author

Joel Hernandez James

🙏 Acknowledgments

  • Akash Network for AI infrastructure
  • Microsoft Azure for cloud hosting
  • Material-UI for the component library
  • The open-source community for various packages used

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors