Introducing dpkit Terminal and TypeScriptSee the announcement

Engineering practice

Automated testing

Fast unit tests, recorded HTTP, and documentation that fails the build when it goes stale.

  • Vitest
  • Playwright
  • testdocs
  • MSW
  • Codecov

What it is

The checks that let a codebase be changed confidently: fast tests around logic, realistic tests around integrations, and a few that drive the real interface.

Why we chose it

Vitest runs the bulk of it, close enough to the build that tests and source share one configuration. Third-party HTTP is recorded once and replayed afterwards, which keeps integration tests both realistic and offline, instead of flaky or fictional. Playwright covers the handful of journeys that are only meaningful end to end. testdocs, which we publish, executes the code blocks inside our documentation as tests, so an example that stops working fails the build rather than misleading a reader for a year.

Where we use it

In every repository we maintain, and as libraries we publish because we needed them ourselves first.
capturetestdocs.dev
The Testdocs documentation site, showing how Markdown code blocks are run as real tests.

Testdocsrunnable documentation examples

Extracts TypeScript code blocks from Markdown and runs them as tests, keeping examples in sync with the code.

we maintain

captureuptask.dev
The Uptask documentation site, showing how an exported TypeScript function becomes a CLI command.

UptaskTypeScript task runner

TypeScript task runner that turns exported functions into CLI commands with zero boilerplate.

we maintain

Get in touch

Tell us what you need built.

We are a small team in Portugal, working London hours. A site, an app, an internal tool, or the platform behind them — start with a sentence about the problem and we will take it from there.

All technologies
Get a quote