# sumanthnadipineni26/ai-business-intelligence-assistant architecture

> Architecture diagram of the GitHub repository sumanthnadipineni26/ai-business-intelligence-assistant, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sumanthnadipineni26/ai-business-intelligence-assistant
- Repository: https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant

## Overview

AI Business Intelligence Assistant is a full-stack platform for turning uploaded business datasets into dashboards, conversational answers, forecasts, insights, decisions, and reports. Users enter through the React application, upload or select data, and use its analysis features through the frontend API client and FastAPI services. The README documents the broader product capabilities; source-index references and excerpts support the specific links shown. Several route and service implementations were not sampled, so their internal connections are omitted where evidence is insufficient.

Main entry points: [`backend/main.py`](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/main.py) (FastAPI application), [`backend/app/api/v1/analytics.py`](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/analytics.py) (Analytics API), [`backend/app/services/dataset_analysis_service.py`](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/dataset_analysis_service.py) (Dataset profiling), [`frontend/src/App.tsx`](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/App.tsx) (React application)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_frontend["User application"]
  node_webapp["React application<br/>[App.tsx]"]
  node_dataset_context["Dataset selection<br/>[DatasetContext.tsx]"]
  node_api_client["Frontend API client<br/>[api.ts]"]
  node_dashboard["BI dashboard<br/>[DashboardPage.tsx]"]
  node_decision_ui["Decision intelligence UI"]
  node_upload_ui["Dataset upload UI<br/>[UploadPage.tsx]"]
end

subgraph group_api["Backend API"]
  node_backend["FastAPI application<br/>[main.py]"]
  node_auth_api["Authentication API<br/>[auth.py]"]
  node_datasets_api["Dataset API<br/>[datasets.py]"]
  node_analytics_api["Analytics API<br/>[analytics.py]"]
  node_chat_api["Chat API<br/>[chat.py]"]
  node_decision_api["Decision API<br/>[decision.py]"]
  node_forecast_api["Forecast API<br/>[forecast.py]"]
  node_reports_api["Reports API<br/>[reports.py]"]
  node_admin_api["Admin API<br/>[admin.py]"]
end

subgraph group_data["Dataset analysis"]
  node_analysis["Dataset profiling"]
  node_dataset_service["Dataset processing<br/>[dataset_service.py]"]
end

subgraph group_intelligence["Business intelligence"]
  node_analytics_service["Dashboard analytics"]
  node_insights_service["Insight generation"]
  node_rag_service["RAG assistant<br/>[rag_service.py]"]
  node_consultant_service["Business consultant"]
  node_decision_service["Decision analysis"]
  node_forecast_service["Forecasting<br/>[ml_service.py]"]
  node_report_service["Report generation<br/>[report_service.py]"]
end

subgraph group_platform["Platform services"]
  node_database[("Relational database<br/>[session.py]")]
  node_access_control["Access control<br/>[deps.py]"]
end

node_users(("Business users"))

node_users -->|"use"| node_webapp
node_webapp -->|"routes to"| node_dashboard
node_webapp -->|"routes to"| node_upload_ui
node_webapp -->|"routes to"| node_decision_ui
node_dashboard -->|"requests data"| node_api_client
node_decision_ui -->|"requests data"| node_api_client
node_dataset_context -->|"loads datasets"| node_api_client
node_api_client -->|"calls REST API"| node_backend
node_backend -->|"registers"| node_auth_api
node_backend -->|"registers"| node_datasets_api
node_backend -->|"registers"| node_analytics_api
node_backend -->|"registers"| node_chat_api
node_backend -->|"registers"| node_decision_api
node_backend -->|"registers"| node_forecast_api
node_backend -->|"registers"| node_reports_api
node_backend -->|"registers"| node_admin_api
node_datasets_api -->|"delegates to"| node_dataset_service
node_datasets_api -->|"uses"| node_insights_service
node_analytics_api -->|"uses"| node_analytics_service
node_analytics_api -->|"uses"| node_analysis
node_analytics_api -->|"uses"| node_insights_service
node_analytics_api -->|"uses"| node_rag_service
node_chat_api -->|"uses"| node_rag_service
node_chat_api -->|"uses"| node_analysis
node_decision_api -->|"delegates to"| node_decision_service
node_decision_service -->|"gets analysis"| node_analysis
node_consultant_service -->|"uses"| node_analysis
node_consultant_service -->|"uses"| node_rag_service
node_consultant_service -.-> node_decision_service
node_forecast_api -.-> node_forecast_service
node_reports_api -.-> node_report_service
node_dataset_service -.-> node_database
node_analysis -->|"reads records"| node_database
node_auth_api -.-> node_access_control
node_access_control -->|"queries users"| node_database
node_backend -->|"initializes tables"| node_database

click node_webapp "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/App.tsx"
click node_dataset_context "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/context/DatasetContext.tsx"
click node_api_client "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/services/api.ts"
click node_dashboard "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/DashboardPage.tsx"
click node_decision_ui "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/DecisionIntelligencePage.tsx"
click node_upload_ui "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/UploadPage.tsx"
click node_backend "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/main.py"
click node_auth_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/auth.py"
click node_datasets_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/datasets.py"
click node_analytics_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/analytics.py"
click node_chat_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/chat.py"
click node_decision_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/decision.py"
click node_forecast_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/forecast.py"
click node_reports_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/reports.py"
click node_admin_api "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/admin.py"
click node_analysis "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/dataset_analysis_service.py"
click node_dataset_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/dataset_service.py"
click node_analytics_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/analytics_service.py"
click node_insights_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/insights_service.py"
click node_rag_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/rag_service.py"
click node_consultant_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/consultant_service.py"
click node_decision_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/decision_service.py"
click node_database "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/db/session.py"
click node_access_control "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/deps.py"
click node_forecast_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/ml_service.py"
click node_report_service "https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/report_service.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_webapp,node_dataset_context,node_api_client,node_dashboard,node_decision_ui,node_upload_ui,node_users toneBlue
class node_backend,node_auth_api,node_datasets_api,node_analytics_api,node_chat_api,node_decision_api,node_forecast_api,node_reports_api,node_admin_api toneAmber
class node_analysis,node_dataset_service toneMint
class node_analytics_service,node_insights_service,node_rag_service,node_consultant_service,node_decision_service,node_forecast_service,node_report_service toneRose
class node_database,node_access_control toneIndigo
```

## Components

### User application

- [React application](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/App.tsx): `frontend/src/App.tsx`
- [Dataset selection](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/context/DatasetContext.tsx): `frontend/src/context/DatasetContext.tsx`
- [Frontend API client](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/services/api.ts): `frontend/src/services/api.ts`
- [BI dashboard](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/DashboardPage.tsx): `frontend/src/pages/DashboardPage.tsx`
- [Decision intelligence UI](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/DecisionIntelligencePage.tsx): `frontend/src/pages/DecisionIntelligencePage.tsx`
- [Dataset upload UI](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/frontend/src/pages/UploadPage.tsx): `frontend/src/pages/UploadPage.tsx`

### Backend API

- [FastAPI application](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/main.py): `backend/main.py`
- [Authentication API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/auth.py): `backend/app/api/v1/auth.py`
- [Dataset API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/datasets.py): `backend/app/api/v1/datasets.py`
- [Analytics API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/analytics.py): `backend/app/api/v1/analytics.py`
- [Chat API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/chat.py): `backend/app/api/v1/chat.py`
- [Decision API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/decision.py): `backend/app/api/v1/decision.py`
- [Forecast API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/forecast.py): `backend/app/api/v1/forecast.py`
- [Reports API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/reports.py): `backend/app/api/v1/reports.py`
- [Admin API](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/v1/admin.py): `backend/app/api/v1/admin.py`

### Dataset analysis

- [Dataset profiling](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/dataset_analysis_service.py): `backend/app/services/dataset_analysis_service.py`
- [Dataset processing](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/dataset_service.py): `backend/app/services/dataset_service.py`

### Business intelligence

- [Dashboard analytics](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/analytics_service.py): `backend/app/services/analytics_service.py`
- [Insight generation](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/insights_service.py): `backend/app/services/insights_service.py`
- [RAG assistant](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/rag_service.py): `backend/app/services/rag_service.py`
- [Business consultant](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/consultant_service.py): `backend/app/services/consultant_service.py`
- [Decision analysis](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/decision_service.py): `backend/app/services/decision_service.py`
- [Forecasting](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/ml_service.py): `backend/app/services/ml_service.py`
- [Report generation](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/services/report_service.py): `backend/app/services/report_service.py`

### Platform services

- [Relational database](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/db/session.py): `backend/app/db/session.py`
- [Access control](https://github.com/sumanthnadipineni26/ai-business-intelligence-assistant/blob/main/backend/app/api/deps.py): `backend/app/api/deps.py`

### Other components

- **Business users**

## Connections

- Business users → React application: use (evidence: `README.md`)
- React application → BI dashboard: routes to (evidence: `frontend/src/App.tsx`)
- React application → Dataset upload UI: routes to (evidence: `frontend/src/App.tsx`)
- React application → Decision intelligence UI: routes to (evidence: `frontend/src/App.tsx`)
- BI dashboard → Frontend API client: requests data (evidence: `frontend/src/pages/DashboardPage.tsx`)
- Decision intelligence UI → Frontend API client: requests data (evidence: `frontend/src/pages/DecisionIntelligencePage.tsx`)
- Dataset selection → Frontend API client: loads datasets (evidence: `frontend/src/context/DatasetContext.tsx`)
- Frontend API client → FastAPI application: calls REST API (evidence: `README.md`)
- FastAPI application → Authentication API: registers (evidence: `backend/main.py`)
- FastAPI application → Dataset API: registers (evidence: `backend/main.py`)
- FastAPI application → Analytics API: registers (evidence: `backend/main.py`)
- FastAPI application → Chat API: registers (evidence: `backend/main.py`)
- FastAPI application → Decision API: registers (evidence: `backend/main.py`)
- FastAPI application → Forecast API: registers (evidence: `backend/main.py`)
- FastAPI application → Reports API: registers (evidence: `backend/main.py`)
- FastAPI application → Admin API: registers (evidence: `backend/main.py`)
- Dataset API → Dataset processing: delegates to (evidence: `backend/app/api/v1/datasets.py`)
- Dataset API → Insight generation: uses (evidence: `backend/app/api/v1/datasets.py`)
- Analytics API → Dashboard analytics: uses (evidence: `backend/app/api/v1/analytics.py`)
- Analytics API → Dataset profiling: uses (evidence: `backend/app/api/v1/analytics.py`)
- Analytics API → Insight generation: uses (evidence: `backend/app/api/v1/analytics.py`)
- Analytics API → RAG assistant: uses (evidence: `backend/app/api/v1/analytics.py`)
- Chat API → RAG assistant: uses (evidence: `backend/app/api/v1/chat.py`)
- Chat API → Dataset profiling: uses (evidence: `backend/app/api/v1/chat.py`)
- Decision API → Decision analysis: delegates to (evidence: `backend/app/api/v1/decision.py`)
- Decision analysis → Dataset profiling: gets analysis (evidence: `backend/app/services/decision_service.py`)
- Business consultant → Dataset profiling: uses (evidence: `backend/app/services/consultant_service.py`)
- Business consultant → RAG assistant: uses (evidence: `backend/app/services/consultant_service.py`)
- Business consultant → Decision analysis
- Forecast API → Forecasting
- Reports API → Report generation
- Dataset processing → Relational database
- Dataset profiling → Relational database: reads records (evidence: `backend/app/services/dataset_analysis_service.py`)
- Authentication API → Access control (evidence: `backend/app/api/v1/auth.py`)
- Access control → Relational database: queries users (evidence: `backend/app/api/deps.py`)
- FastAPI application → Relational database: initializes tables (evidence: `backend/main.py`)
