Book: TypeScript in Production — Tooling, Build, and Library Authoring Across Runtimes
Also by me: The TypeScript Library — the 5-book collection
My project: Hermes IDE | GitHub — an IDE for developers who ship with Claude Code and other AI coding tools
Me: xgabriel.com | GitHub
You've seen it. A library has two test scripts in the same
package.json . One says bun test . The other says vitest run .
The CI matrix runs both. The local dev loop runs whichever one
the maintainer typed last. The README does not mention either.
The reason there are two is that the library exports a function
that does some HTTP work, and at some point a maintainer got
tired of waiting for Vitest to spin up to re-check a one-line fix
in a small unit suite. They tried bun test , it felt noticeably
quicker, they kept it. Then a contributor opened a PR that
mocked an ESM dependency the way Vitest's docs describe. It
worked under Vitest.…