Brendan Coll
Systems Engineer at Cloudflare, and creator of Miniflare. Loves making developers' lives easier. Currently building tooling for Cloudflare Workers.
Testing Alternative Runtimes with Node and Vitest
Node Congress 2024
25 min
Testing Alternative Runtimes with Node and Vitest
A deep dive into how we built support for running Vitest tests in the Cloudflare Workers runtime. We'll start by giving an overview of the Cloudflare developer platform, including our open-source workerd JavaScript runtime and local simulator Miniflare. Next we'll talk about how Vitest works and provides support for custom runtimes, using Node.js as a driver to run tests in another environment. We'll describe the specifics of our custom Vitest pool, and how we added support for dynamic code evaluation to our runtime. Finally we'll talk about how we improved developer ergonomics with isolated per-test storage, test helpers for accessing Durable Object instances directly, and support for declarative HTTP request mocking., and how we created a service to build types for users' specific compatibility settings.
Generating TypeScript with TypeScript
DevOps.js Conf 2024
8 min
Generating TypeScript with TypeScript
A deep-dive into how we automatically generate TypeScript definitions for the V8-based runtime that powers Cloudflare Workers. We'll give an overview of how we use the TypeScript compiler API, how we enhance auto-generated definitions with user-written overrides to improve ergonomics, and how we created a service to build types for users' specific compatibility settings.