Valibot is a TypeScript schema validation library used to define type-safe data structures and verify runtime input. It provides a system for creating runtime type guards and data transformation pipelines that automatically infer static TypeScript types from runtime schema definitions.
The library is built on a modular, function-based architecture designed to minimize bundle size through tree-shaking. It includes specialized tools for converting internal schemas into the JSON Schema format and supports a pipeline-based approach to normalize and transform input data.
Its validation capabilities cover a broad surface including primitive constraints, numeric range limits, and complex types such as discriminated unions and recursive structures. It also provides extensive string format validation for standards like emails, URLs, and various cryptographic hashes, alongside support for asynchronous checks and cross-field validation logic.
The framework further supports developer workflows through validation message localization, result caching, and integration with frontend form libraries and environment configuration files.