GitShow/mattpocock/evalite
mattpocock

evalite

Evaluate your LLM-powered apps with TypeScript

by mattpocock
aievalstypescript
Star on GitHubForkWebsitenpm

TypeScript

1.7k stars102 forks20 contributorsQuiet · 4mo agoSince 2024evalite@0.19.0MIT

Meet the team

See all 20 on GitHub →
mattpocock
mattpocock525 contributions
github-actions[bot]Bot
github-actions[bot]74 contributions
christianklotz
christianklotz13 contributions
DogPawHat
DogPawHat10 contributions
jacobparis
jacobparis10 contributions
tyom
tyom7 contributions
dschlabach
dschlabach4 contributions
vojtaholik
vojtaholik4 contributions

Languages

View on GitHub →
TypeScript89.8%
MDX7.9%
CSS1.1%
JavaScript0.8%
HTML0.2%
Astro0.2%

Commit activity

Last 12 weeks · 0 commits

Full graph →

Community health

3 of 6 standards met

Community profile →
57
✓README✓License✓Contributing○Code of Conduct○Issue Template○PR Template

Recent PRs & issues

Quiet · Last activity 4mo ago
See all on GitHub →
dkokotov
Is this still an active projectOpenIssue

It feels like momentum on the project has stalled - no commits in last ~3 months, v1 still on a branch, no engagement with recently filed issues or open PRs. It would be useful if @mattpocock could provide an update of whether there is any plan to continue pushing this forward and resuming to develop it actively. I was initially excited by this as it seemed to hit a sweet spot of a lightweight, easy to use eval tests framework, and started using it in my codebase. but it's hard to invest more in building a suite atop it with such an uncertain future. This is not a complaint - I totally understand that priorities change. Matt is producing awesome content for the community and perhaps feels his time is better spent on other things. If that's the case it would just be good to make this explicit.

dkokotov · 1mo ago
Mr-Ripperton
UI fails on any remote access: bundle hardcodes localhost + server has no configurable bind hostOpenIssue

Summary Evalite's watch-mode UI is unreachable from any device that isn't the same host running the server — through Tailscale, cloudflared, ngrok, an SSH tunnel to a different machine, a VPS + reverse proxy, etc. Two independent bugs combine to cause it. Reproduction 1. Run on host A (e.g. a VPS, remote dev machine, cloud IDE) 2. Expose port 3006 to host B (Tailscale, , cloudflared, ngrok — any forwarding mechanism) 3. Open the UI URL from host B in a browser 4. HTML loads. The UI shows "Something went wrong" / "Load failed" Root causes Bug 1 — bundle hardcodes builds its API and WebSocket URLs from a hardcoded string, not from . Two occurrences: On any client that isn't the same machine as the server, resolves to the client itself → every fetch and WebSocket connection fails → "Load failed". Fix: Works for both local () and remote (). Bug 2 — server hardcoded to loopback bind, no config option around line 357: Fastify defaults to when is unset. No env var, no config option. Users can't bind to a specific tailnet IP, or for use behind a firewall, etc. Fix (minimal, backwards-compatible): Default stays loopback — no regression for existing users. Anyone needing to expose the UI sets (or better, add to the config schema). Workaround (what I'm running now) with a patch that applies both fixes. Details + full patch file: Saldoapp PR #315. Works fine, but requires the minified bundle diff (~200 KB) to be tracked in the consumer repo — unavoidable while the assets ship pre-built. Impact Any team using evalite from: A dev VPS with an iPad/phone iterating over Tailscale (my case) A cloud IDE (GitHub Codespaces, Gitpod) → local browser A remote pair via A shared team dashboard behind a reverse proxy …hits both bugs and has to either give up remote access or maintain a fork/patch. First bug (the bundle) is the harder one — no runtime workaround since the assets are pre-built and shipped. Environment evalite (latest) Node 20 Verified on Linux (Debian) VPS ↔ iPad Safari over Tailscale Happy to send a PR The bundle change is a 2-line source edit; the server change is 1 line + a config schema field. Can do both if it'd help. Also happy to just leave this as an issue and let you fix it however fits best.

Mr-Ripperton · 1mo ago
UllasSHR
Fix --hideTable forwarding in run and serve modesOpenPR

Summary forward the parsed option to in run and serve modes add regression tests for both command paths add a patch changeset for Root cause and impact The CLI parser captured , but the run and serve command wrappers omitted it when constructing the options passed to . As a result, the reporter continued printing the detailed task-results table even when was used. This is especially noisy for large eval suites that use the UI to inspect results. Validation 102 Evalite source tests passed typecheck passed ESLint passed Prettier passed Fixes #393

UllasSHR · 1mo ago

Recent fixes

View closed PRs →
pattobrien
Migrate to a Vite plugin architecture (`vite-plugin-evalite`)ClosedIssue

With Vitest 3.1+'s plugin hook, it's possible to integrate Evalite directly as a Vite plugin rather than requiring a separate and custom CLI (, ). A could register the reporter, configure test patterns for , and spin up the UI server—all through standard Vite/Vitest primitives. Users would just add the plugin to their existing and run as normal. This would reduce surface area, eliminate the duplicated CLI, and let Evalite compose naturally with existing Vite/Vitest setups.

pattobrien · 3mo ago
Structured data for AI agents

Repository: mattpocock/evalite. Description: Evaluate your LLM-powered apps with TypeScript Stars: 1691, Forks: 102. Primary language: TypeScript. Languages: TypeScript (89.8%), MDX (7.9%), CSS (1.1%), JavaScript (0.8%), HTML (0.2%). License: MIT. Homepage: https://www.evalite.dev/ Topics: ai, evals, typescript. Latest release: evalite@0.19.0 (10mo ago). Open PRs: 17, open issues: 47. Last activity: 4mo ago. Community health: 57%. Top contributors: mattpocock, github-actions[bot], christianklotz, DogPawHat, jacobparis, tyom, dschlabach, vojtaholik, cdavis1324, iamladi and others.

·@ofershap

Replace github.com with gitshow.dev