How santirb03/repo-insight works
RepoInsight is an early-stage repository-analysis platform. Its principal workflow accepts a repository archive, scans files, detects technologies, selects architecture analyzers, merges their graphs, evaluates diagnostics, generates a narrative, and renders a Mermaid diagram. The API service owns this orchestration; domain types carry the scan, graph, findings, and result. README capabilities include ingestion, technology detection, architecture reconstruction, diagrams, diagnostics, and reports. The graph reflects the shown orchestration and indexed references; analyzer internals and endpoint wiring were not sampled, so uncertain links are omitted or marked dashed.
Main entry points: RepositoryAnalysisService.cs Analysis orchestration · ArchitectureDiagnosticsEngine.cs Diagnostics engine · AzureOpenAIRepositoryAnalysisNarrator.cs Narrative generation · RepositoryScan.cs Repository scan
Components 21
API workflow
- Repository endpoints
src/RepoInsight.Api/RepositoryEndpoints.cs - Archive processing
src/RepoInsight.Api/Services/RepositoryZipService.cs - Analysis orchestration
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs
Repository analysis
- Source scanner
src/RepoInsight.Analysis/RepositoryScanner.cs - Technology detection
src/RepoInsight.Analysis/TechnologyDetector.cs - Analyzer selection
src/RepoInsight.Analysis/ArchitectureAnalyzerSelector.cs - ASP.NET analyzer
src/RepoInsight.Analysis/AspNetArchitectureAnalyzer.cs - NestJS analyzer
src/RepoInsight.Analysis/NestJsArchitectureAnalyzer.cs - Diagnostics engine
src/RepoInsight.Analysis/ArchitectureDiagnosticsEngine.cs
Analysis data
- Repository scan
src/RepoInsight.Domain/RepositoryScan.cs - Architecture graph
src/RepoInsight.Domain/ArchitectureGraph.cs - Diagnostic findings
src/RepoInsight.Domain/DiagnosticFinding.cs - Analysis result
src/RepoInsight.Application/RepositoryAnalysisResult.cs
Technical reports
- Narrative generation
src/RepoInsight.Infrastructure/AzureOpenAIRepositoryAnalysisNarrator.cs - Deterministic fallback
src/RepoInsight.Infrastructure/DeterministicRepositoryAnalysisNarrator.cs - Narrative prompt
src/RepoInsight.Infrastructure/RepositoryNarrativePromptBuilder.cs - Azure completion client
src/RepoInsight.Infrastructure/AzureOpenAINarrativeClient.cs
Diagram output
- Diagram simplifier
src/RepoInsight.Analysis/ArchitectureDiagramSimplifier.cs - Mermaid renderer
src/RepoInsight.Analysis/Mermaid/MermaidDiagramRenderer.cs
Other components
- Repository submitter
- Azure AI
Connections 23
- Repository submitter → Repository endpoints: submits archive
README.md - Repository endpoints → Analysis orchestration: requests analysis
src/RepoInsight.Api/RepositoryEndpoints.cs - Analysis orchestration → Archive processing: processes archive
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Analysis orchestration → Source scanner: scans files
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Source scanner → Repository scan: produces scan
src/RepoInsight.Analysis/RepositoryScanner.cs - Analysis orchestration → Technology detection: detects technologies
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Technology detection → Repository scan: reads scan
src/RepoInsight.Analysis/TechnologyDetector.cs - Analysis orchestration → Analyzer selection: selects analyzers
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Analysis orchestration → ASP.NET analyzer: runs selected analyzers
- Analysis orchestration → NestJS analyzer: runs selected analyzers
- Analysis orchestration → Architecture graph: merges graphs
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Analysis orchestration → Diagnostics engine: evaluates findings
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Diagnostics engine → Diagnostic findings: returns findings
src/RepoInsight.Analysis/ArchitectureDiagnosticsEngine.cs - Diagnostics engine → Repository scan: reads scan
src/RepoInsight.Analysis/ArchitectureDiagnosticsEngine.cs - Diagnostics engine → Architecture graph: reads graph
src/RepoInsight.Analysis/ArchitectureDiagnosticsEngine.cs - Analysis orchestration → Narrative generation: generates narrative
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Narrative generation → Narrative prompt: builds prompt
src/RepoInsight.Infrastructure/AzureOpenAIRepositoryAnalysisNarrator.cs - Narrative generation → Azure completion client: requests completion
src/RepoInsight.Infrastructure/AzureOpenAIRepositoryAnalysisNarrator.cs - Azure completion client → Azure AI: requests AI completion
- Narrative generation → Deterministic fallback: falls back
src/RepoInsight.Infrastructure/AzureOpenAIRepositoryAnalysisNarrator.cs - Analysis orchestration → Diagram simplifier: simplifies graph
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Analysis orchestration → Mermaid renderer: renders diagram
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs - Analysis orchestration → Analysis result: builds result
src/RepoInsight.Api/Services/RepositoryAnalysisService.cs