How winnermarvi/codeinsights_github works
CodeInsight AI analyzes a GitHub repository, builds searchable code and dependency knowledge, and serves repository Q&A and analysis through a web interface. The principal workflow runs from repository submission through ingestion, Python parsing, semantic chunking, embedding, and storage; chat then rewrites a question, retrieves matching chunks, and generates a sourced answer. Separate graph, architecture, and impact paths expose structural views and dependency-based change reports. The graph reflects the sampled pipeline calls and documented product capabilities; wiring inside unsampled routes and UI components is represented only at the documented feature level.
Main entry points: api.js HTTP client · ingestion_pipeline.py Repository ingestion · rag_pipeline.py RAG response · repository_graph_pipeline.py Repository graph
Components 22
Web interface
- Analyze page
frontend/src/pages/Analyze.jsx - Chat page
frontend/src/pages/Chat.jsx - Architecture page
frontend/src/pages/Architecture.jsx - Impact page
frontend/src/pages/Impact.jsx - HTTP client
frontend/src/api.js
API and orchestration
- Analyze endpoint
backend/routes/analyze.py - Chat endpoint
backend/routes/chat.py - Architecture endpoint
backend/routes/architecture.py - Impact endpoint
backend/routes/impact.py
Repository analysis
- Repository ingestion
app/ingestion/ingestion_pipeline.py - AST extraction
app/repository/repository_pipeline.py - Semantic chunking
app/chunking/chunk_pipeline.py - Code embeddings
app/embedding/embedding_pipeline.py
Search and Q&A
- Chat workflow
app/chat/chat_pipeline.py - RAG response
app/rag/rag_pipeline.py - Similarity search
app/search/search_pipeline.py
Structure and impact
- Repository graph
app/repository/repository_graph_pipeline.py - Architecture views
app/architecture/architecture_pipeline.py - Impact analysis
app/impact/impact_analysis_pipeline.py
Persistence
- SQLite store
app/database/store.py
Other components
- Developer
- Language model
Connections 27
- Developer → Analyze page: submits repository
- Developer → Chat page: asks questions
- Developer → Architecture page: views structure
- Developer → Impact page: checks changes
- Analyze page → HTTP client: sends request
- Chat page → HTTP client: sends request
- Architecture page → HTTP client: requests view
- Impact page → HTTP client: requests report
- HTTP client → Analyze endpoint: HTTP request
- HTTP client → Chat endpoint: HTTP request
- HTTP client → Architecture endpoint: HTTP request
- HTTP client → Impact endpoint: HTTP request
- Analyze endpoint → Repository ingestion: starts analysis
- Repository ingestion → AST extraction: provides inventory
- Repository ingestion → Semantic chunking: provides inventory
- AST extraction → Repository graph: provides structures
- Semantic chunking → Code embeddings: provides chunks
- Code embeddings → SQLite store: stores vectors
- Chat endpoint → Chat workflow: dispatches question
- Chat workflow → RAG response: requests answer
- RAG response → Similarity search: retrieves chunks
- Similarity search → SQLite store: loads vectors and chunks
- RAG response → Language model: generates answer
- Architecture endpoint → Architecture views: requests diagrams
- Architecture views → Repository graph: reads dependencies
- Impact endpoint → Impact analysis: requests report
- Impact analysis → Repository graph: reads dependencies