shape

Shape documentation#

Shape is a schema-by-example validator: your schema looks (almost) exactly like your data. It runs in JavaScript/TypeScript (browser and backend), in Go and in Rust, with the three implementations kept at behavioural parity—TypeScript is the canonical reference.

These docs follow the Diátaxis system and are published at rjrodger.github.io/shape, where a performance report compares shape to other validators. Pick the column that matches what you need right now:

You want to… Go to
learn Shape by building something Tutorials
solve a specific problem step by step How-to guides
look up an exact builder, method or type Reference
understand how and why Shape works Explanation

Tutorials#

Start here if you are new. Learning-oriented, worked end-to-end.

How-to guides#

Goal-oriented recipes for a task you already have.

Reference#

Dry, complete, look-it-up material.

Explanation#

Background and design discussion.

Decision records#

Design decisions that are expensive to revisit, with the reasoning behind them.


Conventions used in these docs#