Contributing
Community contributions are welcome.Prerequisites
- Node.js 20+
- Docker for MongoDB
- Provider API keys:
OPENAI_API_KEYANTHROPIC_API_KEYGOOGLE_API_KEY
Local setup
http://localhost:5173.
Architecture overview
Request flow:POST /api/evaluatevalidates input and creates an evaluation recordservices/orchestrator.jsprocesses test cases sequentiallyorchestrator/adaptiveRouter.jsselectscouncil,hybrid, orsingle- SSE events stream through
utils/sse.js
Adding a new judge
- Create
backend/src/services/judges/<provider>.js - Register it in
backend/src/services/orchestrator.js - Add provider styling in the frontend
- Update
.env.examplewith any required credentials
Code style
- Backend uses ESM with
.jsimport extensions - Comments should stay sparse and purposeful
- Cost values round to 6 decimal places
Pull request process
- Branch from
mainwith a descriptive name - Open a PR that explains both the change and the reason for it
- Update
CHANGELOG.mdunderUnreleased - Verify the stack runs cleanly before requesting review