CodeCompass turns a GitHub repository into an interactive, searchable knowledge base. Add a public repo, index it locally with embeddings (Chroma), and chat with an LLM grounded on real files from that repo.
🔒 Privacy‑first • 🎯 Repo‑scoped answers • 💾 Local vector store • 🔖 Clear citations
- Repo‑scoped conversational search - answers stay focused on the repo you select
- Source grounding - responses reference retrieved passages and files
- Persistent index - once indexed, the repo remains searchable
- Simple ingestion - accepts
owner/repoor full GitHub URLs; normalization prevents duplicates
React (Vite + Tailwind)
↕
Flask REST API
↕
Embedchain (ingest + retrieve)
↕ ↘
Chroma (vectors) Groq LLM
- Embeddings: sentence‑transformers
all‑MiniLM‑L6‑v2(fast and compact) - Vector DB: Chroma persisted under
backend/dbfor local, fast retrieval - LLM: Groq (configurable). Prompt encourages concise, source‑grounded answers
- Metadata: each chunk stores
github_repo,file_path,chunk_indexfor precise citations
- 401/403 from LLM → check
GROQ_API_KEYinbackend/.env, restart Flask - Cannot add repo → ensure it’s a public GitHub repository or provide a
GITHUB_TOKEN
- File/line citations with clickable open‑in‑editor behavior
- Partial/continuous indexing for very large repos
- Answer streaming UI for progressive responses
- Docker images and a simple hosted deployment option


