How yashabyss/ai-due-dilligence-copilot works
This is an AI due-diligence copilot: users upload company documents, generate a report combining extracted financials, financial trends and risks, and ask document questions with web fallback. The graph preserves the frontend report sections and backend analysis stages. Evidence is limited to the supplied excerpts and source index; undocumented upload and web-search wiring is omitted.
Main entry points: Dashboard.jsx Dashboard · engine.py Risk engine · main.py FastAPI application · reports.py Report generation
Components 32
Dashboard interface
- Dashboard
frontend/src/pages/Dashboard.jsx - Document upload
frontend/src/components/DocumentUpload.jsx - Copilot chat
frontend/src/components/Chatbot.jsx - Risk summary view
frontend/src/components/RiskSummary.jsx - Executive summary
frontend/src/components/ExecutiveSummary.jsx - Financial metrics view
frontend/src/components/FinancialMetrics.jsx - Financial ratios view
frontend/src/components/FinancialRatios.jsx - Ratio charts
frontend/src/components/RatioCharts.jsx - Risk analysis view
frontend/src/components/RiskAnalysis.jsx - Business analysis view
frontend/src/components/BusinessAnalysis.jsx - Evidence view
frontend/src/components/Evidence.jsx
API and orchestration
- HTTP client
frontend/src/services/api.js - FastAPI application
backend/app/main.py - Document routes
backend/app/api/routes/documents.py - Report generation
backend/app/api/routes/reports.py - Chat route
backend/app/api/routes/chat.py - Due diligence graph
backend/app/agents/graph.py - Workflow state
backend/app/agents/state.py
Document intelligence
- Document retrieval
backend/app/rag/retriever.py - Embedding model
backend/app/rag/embeddings.py - Language model
backend/app/rag/llm.py - Web search
backend/app/rag/web_search.py
Financial and risk analysis
- Financial extraction
backend/app/financial/metrics.py - Financial analysis
backend/app/financial/analysis.py - Ratio calculations
backend/app/financial/ratios.py - Financial trends
backend/app/financial/trends.py - Risk agent
backend/app/agents/risk_agent.py - Risk engine
backend/app/risk/engine.py - Threshold risk detection
backend/app/risk/detector.py - Red-flag detection
backend/app/risk/red_flags.py - Risk scoring
backend/app/risk/scoring.py
Other components
- Analyst
Connections 31
- Analyst → Dashboard: uses
- Dashboard → Document upload: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Copilot chat: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Risk summary view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Executive summary: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Financial metrics view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Financial ratios view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Ratio charts: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Risk analysis view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Business analysis view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → Evidence view: renders
frontend/src/pages/Dashboard.jsx - Dashboard → HTTP client: requests reports
frontend/src/pages/Dashboard.jsx - Copilot chat → HTTP client: sends questions
frontend/src/components/Chatbot.jsx - HTTP client → FastAPI application: HTTP requests
frontend/src/services/api.js - FastAPI application → Document routes: registers route
backend/app/main.py - FastAPI application → Report generation: registers route
backend/app/main.py - FastAPI application → Chat route: registers route
backend/app/main.py - Report generation → Financial extraction: extracts metrics
backend/app/api/routes/reports.py - Report generation → Financial analysis: analyzes financials
backend/app/api/routes/reports.py - Report generation → Due diligence graph: invokes graph
backend/app/api/routes/reports.py - Due diligence graph → Workflow state: uses state
backend/app/agents/graph.py - Financial extraction → Document retrieval: retrieves context
backend/app/financial/metrics.py - Financial extraction → Language model: extracts with
backend/app/financial/metrics.py - Document retrieval → Embedding model: loads model
backend/app/rag/retriever.py - Financial analysis → Ratio calculations: calculates ratios
backend/app/financial/analysis.py - Financial analysis → Financial trends: calculates trends
backend/app/financial/analysis.py - Risk agent → Risk engine: runs analysis
backend/app/agents/risk_agent.py - Risk engine → Financial analysis: analyzes financials
backend/app/risk/engine.py - Risk engine → Threshold risk detection: detects risks
backend/app/risk/engine.py - Risk engine → Red-flag detection: detects red flags
backend/app/risk/engine.py - Risk engine → Risk scoring: scores risk
backend/app/risk/engine.py