---
title: "Superstruct"
description: "Composable validators for JavaScript and TypeScript values."
pagination: false
---

{/* Generated from content/. Edit the catalog, not this page. */}

<PurposeNote title="Good for">Checking application input with small reusable data structures.</PurposeNote>

## What it does

Composable validators for JavaScript and TypeScript values.

## When it fits

Checking application input with small reusable data structures.

## Other options in this category

<div data-pagefind-ignore>

- [ArkType](/validation/arktype) — Validating external data while keeping schema definitions close to static types.
- [io-ts](/validation/io-ts) — Validating data at application boundaries in functional TypeScript code.
- [Joi](/validation/joi) — Checking structured request payloads and configuration objects.
- [T3 Env](/validation/t3-env) — Failing early when server or client configuration is missing or invalid.
- [Yup](/validation/yup) — Defining form constraints and reusable object validation rules.

</div>

## Source

[Project source for Superstruct ↗](https://docs.superstructjs.org/)

Editorial overview reviewed on October 24, 2026. Follow the source for current setup, compatibility, and licensing.

[Validate incoming data →](/tasks/validate-incoming-data)

[All runtime validation options →](/validation)
