Introducing dpkit Terminal and TypeScriptSee the announcement

Data & storage

Data standards & validation

Schemas that travel with the data, and one validation contract from database to browser.

  • Fairspec
  • Data Package
  • JSON Schema
  • Zod
  • Pydantic
  • DataCite

What it is

Machine-readable descriptions of what a dataset or a payload contains, and the runtime checks that hold it to that description at every boundary it crosses.

Why we chose it

Most integration failures are schema failures discovered late. We use Zod as the single runtime contract inside TypeScript, Pydantic on the Python side, and JSON Schema wherever the contract has to outlive a language choice. Fairspec, the specification we author, extends that to whole datasets: a data exchange format compatible with DataCite and JSON Schema that makes data findable and reusable rather than merely downloadable. Schemas are generated from the database rather than hand-copied, so there is one definition and no second copy to forget.

What we build with it

Data platforms & pipelines

Getting data in, checking it, and keeping it correct — from a handful of spreadsheets to millions of rows a day.

Data processing · Data standards & validation · Transactional databases · Web data acquisition

Where we use it

In every API boundary and file import we build, and as the subject of the standards work we publish openly.
captureapplication.fairspec.org
The Fairspec site, the data exchange format we author, with its Python and TypeScript implementations.

Fairspecdata framework in TypeScript and Python

A specification for describing tabular datasets, with reference implementations in TypeScript and Python.

we author

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