How mohanish3/eval-atlas works
Eval Atlas is a browser-based LLM evaluation dashboard. Users create or upload an eval set, configure a run and model providers, then inspect streamed question results and category-level accuracy. A second workflow runs prompt research: select a target model and research model, iterate and score candidate prompts, inspect trials, and promote the best prompt. The tree and excerpts establish the research route’s orchestration and SSE handling; several main-evaluation and persistence connections are inferred only at the subsystem level, so uncertain internal calls are omitted.
Main entry points: promptResearch.ts Research routes · App.tsx App routes · EvalResearch.tsx Research view · server.ts Express server
Components 22
Dashboard
- App routes
frontend/src/App.tsx - Eval pages
frontend/src/pages - Research view
frontend/src/pages/EvalResearch.tsx - Run stream hook
frontend/src/hooks/useEvalStream.ts - Research stream hook
frontend/src/hooks/useResearchStream.ts - Run state
frontend/src/store/useEvalStore.ts - API client
frontend/src/services/api.ts
API
- Express server
backend/src/server.ts - Eval routes
backend/src/routes/evals.ts - Research routes
backend/src/routes/promptResearch.ts
Evaluation
- Eval sets
backend/src/routes/evals.ts - Eval runner
backend/src/evals/runner.ts - Answer scorer
backend/src/evals/scorer.ts - Model adapters
backend/src/evals/adapters
Prompt research
- Research loop
backend/src/evals/promptResearchRunner.ts - Research budget
backend/src/evals/researchBudget.ts - SSE registry
backend/src/evals/sseManager.ts
Persistence
- Eval fallback store
backend/src/evals/fallbackStore.ts - Research store
backend/src/evals/promptResearchStore.ts - PostgreSQL
backend/src/db/connection.ts
Other components
- Browser user
- LLM providers
Connections 24
- Browser user → App routes: uses
- App routes → Eval pages: routes to
- App routes → Research view: routes to
- Eval pages → API client: requests data
- Research view → API client: loads and promotes
- Research view → Research stream hook: subscribes
- Run stream hook → Run state: updates results
- Research stream hook → SSE registry: receives events
- API client → Express server: HTTP requests
- Express server → Eval routes: mounts routes
- Express server → Research routes: mounts routes
- Eval routes → Eval runner: runs evaluations
- Eval runner → Answer scorer: scores answers
- Eval runner → Model adapters: queries models
- Model adapters → LLM providers: sends prompts
- Research routes → Eval fallback store: loads memory set
- Research routes → PostgreSQL: loads eval set
- Research routes → Research budget: resolves budget
- Research routes → Research store: creates and reads runs
- Research routes → Research loop: starts asynchronously
- Research routes → SSE registry: registers stream clients
- Research loop → Research store: persists research
- Research loop → SSE registry: broadcasts trials
- Research store → PostgreSQL: persists runs