Creating a schema. This is usually a one time cost.
schemas.ts
import * as v from "valibot"; export const personSchema = v.object({ name: v.string(), age: v.number(), });
Optimizations
| Library | Version | Optimizations | Mean | Compare | |||
|---|---|---|---|---|---|---|---|
typebox | Code snippet | 1.0.51 | None | 26 μs | |||
valibot | Code snippet | 1.1.0 | None | 53 μs | 2.08x | ||
yup | Code snippet | 1.7.1 | None | 107 μs | 4.18x | ||
joi | Code snippet | 18.0.1 | None | 208 μs | 8.13x | ||
effect | Code snippet | 3.19.3 | None | 539 μs | 21.01x | ||
arktype | Code snippet | 2.1.25 | None | 574 μs | 22.36x | ||
effect (decodeUnknownEither) | Code snippet | 3.19.3 | None | 713 μs | 27.82x |