# abhigyanmishra219/audit architecture

> Architecture diagram of the GitHub repository abhigyanmishra219/audit, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/abhigyanmishra219/audit
- Repository: https://github.com/abhigyanmishra219/audit

## Overview

This is a digital-audit application for creating and managing client audits, recording questionnaire answers, evaluating scores and findings, and turning results into prioritized recommendations and client-facing summaries or reports. The main user workflow runs from audit/template management through audit completion and review to actionable findings, recommendations, and reporting. The tree and excerpts support the domain capabilities and several service-to-analysis calls; unsampled action and UI wiring is represented only where the excerpts establish it.

Main entry points: [`src/services/recommendationService.ts`](https://github.com/abhigyanmishra219/audit/blob/main/src/services/recommendationService.ts) (Recommendation service), [`src/services/findingService.ts`](https://github.com/abhigyanmishra219/audit/blob/main/src/services/findingService.ts) (Finding service), [`src/services/auditTransferService.ts`](https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditTransferService.ts) (Audit transfer), [`src/services/auditService.ts`](https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditService.ts) (Audit service)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["Audit experience"]
  node_audit_manager["Audit management<br/>[AuditsManager.tsx]"]
  node_audit_workflow["Questionnaire workflow<br/>[AuditWorkflow.tsx]"]
  node_template_builder["Template builder"]
  node_findings_ui["Findings manager"]
  node_recommendations_ui["Recommendations manager"]
  node_summary_view["Audit summary"]
  node_report_view["Report document<br/>[ReportDocument.tsx]"]
end

subgraph group_domain["Audit analysis"]
  node_scoring["Audit scoring<br/>[index.ts]"]
  node_finding_engine["Finding generation<br/>[index.ts]"]
  node_recommendation_engine["Recommendation generation<br/>[index.ts]"]
  node_summary_data["Summary data"]
  node_report_data["Report data"]
  node_pdf_report["PDF export"]
  node_summary_pdf["Summary PDF"]
  node_whatsapp["WhatsApp message"]
  node_service_catalog["Service catalog<br/>[serviceCatalog.ts]"]
end

subgraph group_services["Application services"]
  node_audit_actions["Audit actions<br/>[auditActions.ts]"]
  node_finding_actions["Finding actions<br/>[findingActions.ts]"]
  node_recommendation_actions["Recommendation actions"]
  node_report_actions["Report actions<br/>[reportActions.ts]"]
  node_summary_actions["Summary actions<br/>[summaryActions.ts]"]
  node_audit_service["Audit service<br/>[auditService.ts]"]
  node_finding_service["Finding service<br/>[findingService.ts]"]
  node_recommendation_service["Recommendation service"]
  node_transfer_service["Audit transfer"]
end

subgraph group_persistence["Audit persistence"]
  node_db_connection["Database connection<br/>[db.ts]"]
  node_audit_models[("Audit records<br/>[index.ts]")]
end

node_user(("Audit user"))

node_user -->|"manages audits"| node_audit_manager
node_user -->|"completes audit"| node_audit_workflow
node_user -->|"configures template"| node_template_builder
node_audit_manager -->|"lists templates"| node_audit_actions
node_findings_ui -->|"manages findings"| node_finding_actions
node_recommendations_ui -->|"manages recommendations"| node_recommendation_actions
node_audit_manager -->|"loads summary"| node_summary_data
node_audit_manager -->|"loads report data"| node_report_data
node_finding_service -->|"loads hierarchy"| node_audit_service
node_finding_service -->|"generates findings"| node_finding_engine
node_recommendation_service -->|"loads hierarchy"| node_audit_service
node_recommendation_service -->|"loads findings"| node_finding_service
node_recommendation_service -->|"generates recommendations"| node_recommendation_engine
node_recommendation_service -->|"resolves service"| node_service_catalog
node_transfer_service -->|"loads hierarchy"| node_audit_service
node_transfer_service -->|"loads findings"| node_finding_service
node_transfer_service -->|"loads recommendations"| node_recommendation_service
node_audit_service -->|"connects"| node_db_connection
node_finding_service -->|"connects"| node_db_connection
node_recommendation_service -->|"connects"| node_db_connection
node_transfer_service -->|"connects"| node_db_connection
node_audit_service -->|"reads and writes"| node_audit_models
node_finding_service -->|"reads and writes"| node_audit_models
node_recommendation_service -->|"reads and writes"| node_audit_models
node_transfer_service -->|"reads and writes"| node_audit_models
node_summary_data -->|"uses scoring"| node_scoring
node_report_data -->|"uses scoring"| node_scoring
node_report_data -->|"feeds export"| node_pdf_report
node_summary_data -->|"feeds export"| node_summary_pdf
node_summary_data -->|"feeds message"| node_whatsapp

click node_audit_manager "https://github.com/abhigyanmishra219/audit/blob/main/src/components/AuditsManager.tsx"
click node_audit_workflow "https://github.com/abhigyanmishra219/audit/blob/main/src/components/AuditWorkflow.tsx"
click node_template_builder "https://github.com/abhigyanmishra219/audit/blob/main/src/components/TemplateBuilder.tsx"
click node_findings_ui "https://github.com/abhigyanmishra219/audit/blob/main/src/components/FindingsManager.tsx"
click node_recommendations_ui "https://github.com/abhigyanmishra219/audit/blob/main/src/components/RecommendationsManager.tsx"
click node_summary_view "https://github.com/abhigyanmishra219/audit/blob/main/src/components/summary/AuditSummaryView.tsx"
click node_report_view "https://github.com/abhigyanmishra219/audit/blob/main/src/components/report/ReportDocument.tsx"
click node_audit_actions "https://github.com/abhigyanmishra219/audit/blob/main/src/actions/auditActions.ts"
click node_finding_actions "https://github.com/abhigyanmishra219/audit/blob/main/src/actions/findingActions.ts"
click node_recommendation_actions "https://github.com/abhigyanmishra219/audit/blob/main/src/actions/recommendationActions.ts"
click node_report_actions "https://github.com/abhigyanmishra219/audit/blob/main/src/actions/reportActions.ts"
click node_summary_actions "https://github.com/abhigyanmishra219/audit/blob/main/src/actions/summaryActions.ts"
click node_audit_service "https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditService.ts"
click node_finding_service "https://github.com/abhigyanmishra219/audit/blob/main/src/services/findingService.ts"
click node_recommendation_service "https://github.com/abhigyanmishra219/audit/blob/main/src/services/recommendationService.ts"
click node_transfer_service "https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditTransferService.ts"
click node_scoring "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/scoring/index.ts"
click node_finding_engine "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/findings/index.ts"
click node_recommendation_engine "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/recommendations/index.ts"
click node_summary_data "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/summary/generateSummaryData.ts"
click node_report_data "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/report/generateReportData.ts"
click node_pdf_report "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generatePdfReport.ts"
click node_summary_pdf "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generateSummaryPdfReport.ts"
click node_whatsapp "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generateWhatsAppMessage.ts"
click node_service_catalog "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/recommendations/serviceCatalog.ts"
click node_db_connection "https://github.com/abhigyanmishra219/audit/blob/main/src/lib/db.ts"
click node_audit_models "https://github.com/abhigyanmishra219/audit/blob/main/src/models/index.ts"

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_audit_manager,node_audit_workflow,node_template_builder,node_findings_ui,node_recommendations_ui,node_summary_view,node_report_view,node_user toneBlue
class node_scoring,node_finding_engine,node_recommendation_engine,node_summary_data,node_report_data,node_pdf_report,node_summary_pdf,node_whatsapp,node_service_catalog toneAmber
class node_audit_actions,node_finding_actions,node_recommendation_actions,node_report_actions,node_summary_actions,node_audit_service,node_finding_service,node_recommendation_service,node_transfer_service toneMint
class node_db_connection,node_audit_models toneRose
```

## Components

### Audit experience

- [Audit management](https://github.com/abhigyanmishra219/audit/blob/main/src/components/AuditsManager.tsx): `src/components/AuditsManager.tsx`
- [Questionnaire workflow](https://github.com/abhigyanmishra219/audit/blob/main/src/components/AuditWorkflow.tsx): `src/components/AuditWorkflow.tsx`
- [Template builder](https://github.com/abhigyanmishra219/audit/blob/main/src/components/TemplateBuilder.tsx): `src/components/TemplateBuilder.tsx`
- [Findings manager](https://github.com/abhigyanmishra219/audit/blob/main/src/components/FindingsManager.tsx): `src/components/FindingsManager.tsx`
- [Recommendations manager](https://github.com/abhigyanmishra219/audit/blob/main/src/components/RecommendationsManager.tsx): `src/components/RecommendationsManager.tsx`
- [Audit summary](https://github.com/abhigyanmishra219/audit/blob/main/src/components/summary/AuditSummaryView.tsx): `src/components/summary/AuditSummaryView.tsx`
- [Report document](https://github.com/abhigyanmishra219/audit/blob/main/src/components/report/ReportDocument.tsx): `src/components/report/ReportDocument.tsx`

### Audit analysis

- [Audit scoring](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/scoring/index.ts): `src/lib/audit/scoring/index.ts`
- [Finding generation](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/findings/index.ts): `src/lib/audit/findings/index.ts`
- [Recommendation generation](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/recommendations/index.ts): `src/lib/audit/recommendations/index.ts`
- [Summary data](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/summary/generateSummaryData.ts): `src/lib/audit/summary/generateSummaryData.ts`
- [Report data](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/report/generateReportData.ts): `src/lib/audit/report/generateReportData.ts`
- [PDF export](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generatePdfReport.ts): `src/lib/audit/export/generatePdfReport.ts`
- [Summary PDF](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generateSummaryPdfReport.ts): `src/lib/audit/export/generateSummaryPdfReport.ts`
- [WhatsApp message](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/export/generateWhatsAppMessage.ts): `src/lib/audit/export/generateWhatsAppMessage.ts`
- [Service catalog](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/audit/recommendations/serviceCatalog.ts): `src/lib/audit/recommendations/serviceCatalog.ts`

### Application services

- [Audit actions](https://github.com/abhigyanmishra219/audit/blob/main/src/actions/auditActions.ts): `src/actions/auditActions.ts`
- [Finding actions](https://github.com/abhigyanmishra219/audit/blob/main/src/actions/findingActions.ts): `src/actions/findingActions.ts`
- [Recommendation actions](https://github.com/abhigyanmishra219/audit/blob/main/src/actions/recommendationActions.ts): `src/actions/recommendationActions.ts`
- [Report actions](https://github.com/abhigyanmishra219/audit/blob/main/src/actions/reportActions.ts): `src/actions/reportActions.ts`
- [Summary actions](https://github.com/abhigyanmishra219/audit/blob/main/src/actions/summaryActions.ts): `src/actions/summaryActions.ts`
- [Audit service](https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditService.ts): `src/services/auditService.ts`
- [Finding service](https://github.com/abhigyanmishra219/audit/blob/main/src/services/findingService.ts): `src/services/findingService.ts`
- [Recommendation service](https://github.com/abhigyanmishra219/audit/blob/main/src/services/recommendationService.ts): `src/services/recommendationService.ts`
- [Audit transfer](https://github.com/abhigyanmishra219/audit/blob/main/src/services/auditTransferService.ts): `src/services/auditTransferService.ts`

### Audit persistence

- [Database connection](https://github.com/abhigyanmishra219/audit/blob/main/src/lib/db.ts): `src/lib/db.ts`
- [Audit records](https://github.com/abhigyanmishra219/audit/blob/main/src/models/index.ts): `src/models/index.ts`

### Other components

- **Audit user**

## Connections

- Audit user → Audit management: manages audits
- Audit user → Questionnaire workflow: completes audit
- Audit user → Template builder: configures template
- Audit management → Audit actions: lists templates
- Findings manager → Finding actions: manages findings
- Recommendations manager → Recommendation actions: manages recommendations
- Audit management → Summary data: loads summary
- Audit management → Report data: loads report data
- Finding service → Audit service: loads hierarchy
- Finding service → Finding generation: generates findings
- Recommendation service → Audit service: loads hierarchy
- Recommendation service → Finding service: loads findings
- Recommendation service → Recommendation generation: generates recommendations
- Recommendation service → Service catalog: resolves service
- Audit transfer → Audit service: loads hierarchy
- Audit transfer → Finding service: loads findings
- Audit transfer → Recommendation service: loads recommendations
- Audit service → Database connection: connects
- Finding service → Database connection: connects
- Recommendation service → Database connection: connects
- Audit transfer → Database connection: connects
- Audit service → Audit records: reads and writes
- Finding service → Audit records: reads and writes
- Recommendation service → Audit records: reads and writes
- Audit transfer → Audit records: reads and writes
- Summary data → Audit scoring: uses scoring
- Report data → Audit scoring: uses scoring
- Report data → PDF export: feeds export
- Summary data → Summary PDF: feeds export
- Summary data → WhatsApp message: feeds message
