How thakurveersinghdhillon-pixel/ragforge works
RAGForge is a multi-tenant RAG search and research platform. Users select a workspace, upload documents for indexing, then search or chat against that workspace; the backend retrieves and generates answers, with optional reranking, compression, and verification. The product also exposes workspace management, analytics, evaluation, experiments, and research features. The graph combines README-documented pipeline stages with source-index-supported module relationships; unsampled implementation details and some internal call edges are omitted rather than inferred.
Main entry points: service.py RAG service · AppShell.tsx App shell · router.py API router · ingestion_service.py Document ingestion
Components 23
Web application
- App shell
frontend/src/components/layout/AppShell.tsx - Workspace context
frontend/src/context/WorkspaceContext.tsx - Search page
frontend/src/app/search/page.tsx - Documents page
frontend/src/app/documents/page.tsx - Web API clients
frontend/src/services/rag.ts - Evaluation dashboard
frontend/src/app/evaluation/page.tsx
Backend API
- API router
backend/app/api/v1/router.py
RAG pipeline
- RAG service
backend/app/rag/service.py - Retrieval strategies
backend/app/rag/retrieval - Adaptive routing
backend/app/rag/adaptive - Advanced query processing
backend/app/rag/advanced/pipeline.py - Reranking
backend/app/rag/reranking - Context compression
backend/app/rag/compression - Answer verification
backend/app/rag/verification - LLM providers
backend/app/providers/llm/factory.py
Workspace content
- Document ingestion
backend/app/services/ingestion_service.py - Upload storage
backend/app/services/storage.py - Document repository
backend/app/repositories/document_repository.py - Workspace data
backend/app/models/document.py
Evaluation and research
- Query logs
backend/app/models/query_log.py - Evaluation runner
backend/app/evaluation/runner.py - Analytics and research
backend/app/services/analytics_service.py
Other components
- User
Connections 24
- User → App shell: uses
README.md - App shell → Workspace context: reads workspace
frontend/src/components/layout/AppShell.tsx - App shell → Search page: hosts
frontend/src/app/search/page.tsx - App shell → Documents page: hosts
frontend/src/app/documents/page.tsx - Search page → Web API clients: requests search
frontend/src/app/search/page.tsx - Documents page → Web API clients: requests documents
frontend/src/app/documents/page.tsx - Web API clients → API router: calls API
- API router → Document ingestion: routes documents
- Document ingestion → Upload storage: saves uploads
backend/app/services/ingestion_service.py - Document ingestion → Document repository: creates records
backend/app/services/ingestion_service.py - Document repository → Workspace data: persists documents
backend/app/repositories/document_repository.py - API router → RAG service: routes RAG requests
- User → Search page: submits query
README.md - RAG service → Retrieval strategies: retrieves passages
README.md - RAG service → Adaptive routing: routes query
README.md - RAG service → Reranking: reranks results
README.md - RAG service → Context compression: compresses context
README.md - RAG service → LLM providers: generates answer
README.md - RAG service → Answer verification: verifies answer
README.md - RAG service → Advanced query processing: uses optional processing
backend/app/rag/service.py - RAG service → Query logs: records query metrics
backend/app/rag/service.py - User → Evaluation dashboard: runs evaluations
README.md - Evaluation dashboard → Evaluation runner: configures evaluation
- User → Analytics and research: reviews insights
README.md