How adityapatel5912/reposcope works
RepoScope loads a GitHub repository, builds an architecture graph, and presents it alongside file browsing, cited conversational Q&A, code tours, impact analysis, and change tracking. The main workflow runs from the React workspace through the API to repository loading and graph construction; chat builds graph and optional GitHub context before using the configured LLM providers. The README documents several additional capabilities whose exact internal wiring is not shown in the sampled source, so those connections are limited to documented ownership and supported paths.
Main entry points: App.tsx Workspace · main.py FastAPI endpoints · orchestrator.py Context orchestrator · client.ts API client
Components 25
Workspace UI
- Workspace
frontend/src/App.tsx - Repository loader
frontend/src/hooks/useRepoLoader.ts - API client
frontend/src/api/client.ts - Architecture graph
frontend/src/components/GraphView.tsx - Chat panel
frontend/src/components/ChatPanel.tsx - File tree
frontend/src/components/FileTree.tsx - Tracking panel
frontend/src/components/TrackingPanel.tsx - Tour panel
frontend/src/components/TourPanel.tsx - Impact panel
frontend/src/components/ImpactPanel.tsx - Feature requests
frontend/src/api/features.ts
API and orchestration
- FastAPI endpoints
backend/main.py - Context orchestrator
backend/orchestrator.py - Session token store
backend/byok_manager.py
Repository analysis
- Repository loader
backend/repo_loader.py - Code graph builder
backend/graph_builder.py - Impact analysis
backend/impact_analyzer.py - Tour generation
backend/tour_generator.py - Tracking state
backend/repo_tracker.py
External integrations
- GitHub and MCP client
backend/mcp_client.py - LLM provider chain
backend/runtime_config.py - Key rotation
backend/key_rotator.py
Other components
- Repository user
- GitHub
- Codebase MCP
- LLM providers
Connections 32
- Repository user → Workspace: uses
- Workspace → Repository loader: starts loading
- Repository loader → API client: requests load
- API client → FastAPI endpoints: HTTP requests
- FastAPI endpoints → Repository loader: loads repository
- Repository loader → GitHub: fetches repository
- FastAPI endpoints → Context orchestrator: builds chat context
- Context orchestrator → Tracking state: reads state
- Context orchestrator → Code graph builder: builds graph
- Context orchestrator → GitHub and MCP client: queries fallback graph
- GitHub and MCP client → Codebase MCP: queries graph
- Context orchestrator → GitHub and MCP client: fetches tracking
- GitHub and MCP client → GitHub: fetches activity
- Context orchestrator → LLM provider chain: requests answer
- LLM provider chain → Key rotation: gets provider key
- LLM provider chain → LLM providers: sends prompt
- FastAPI endpoints → Session token store: stores token
- FastAPI endpoints → Impact analysis: analyzes impact
- FastAPI endpoints → Tour generation: generates tour
- FastAPI endpoints → Tracking state: updates tracking
- Architecture graph → API client: loads graph
- Chat panel → API client: streams chat
- Tracking panel → API client: requests tracking
- Impact panel → Feature requests: requests analysis
- Tour panel → Feature requests: requests tour
- Architecture graph → Feature requests: requests prompt
- Workspace → Architecture graph: renders graph
- Workspace → Chat panel: renders chat
- Workspace → File tree: renders files
- Workspace → Tracking panel: renders tracking
- Workspace → Tour panel: renders tours
- Workspace → Impact panel: renders impact