LogoLogo

Schema Benchmarks

    • home
      Home

    • download_2
      Download

    • timer
      Initialization
    • check_circle
      Validation
    • output_circle
      Parsing
    • swap_horiz
      Codec
    • schema
      Standard Schema
    • format_quote
      String

    • error
      Stack

  • JSON Schema

    • data_object
      Schema to JSON
    • code
      JSON to Schema

    • deployed_code
      Libraries

    • article
      Blog
Expand sidebarExpand sidebar
Benchmarks/InitializationInitialization
github
GitHubGitHub
DiscordDiscord
PreferencesPreferences

Creating a schema. This is usually a one time cost.

schemas.ts
Copy to clipboardCopy to clipboard
import * as v from "valibot"; export const personSchema = v.object({ name: v.string(), age: v.number(), });
Optimizations
  • flash_offNone
  • codeJIT
  • buildPrecompiled
LibrarysortVersiondownload/wksortOptimizationsMeanarrow_upwardCompare
typia (createIs)
Code snippetCode snippet
typia.createIs<TypiaSchema>()
13.2.0350.5KPrecompiled78 ns
typia (createValidate)
Code snippetCode snippet
typia.createValidate<TypiaSchema>()
13.2.0350.5KPrecompiled149 ns
1.92x
stat_minus_1
@paseri/compiler
Code snippetCode snippet
// const source = toSource(schema.toIR(), { name: "Product" });
import { Product } from "./product.gen.ts";

(Commented code is not benchmarked)

0.7.7103Precompiled994 ns
12.79x
stat_minus_1
@railway-ts/pipelines
Code snippetCode snippet
object(...)
0.1.29225None1 μs
14.04x
stat_minus_1
@paseri/paseri
Code snippetCode snippet
p.object(...)
1.9.793None3 μs
39.77x
stat_minus_1
io-ts
Code snippetCode snippet
t.type(...)
2.2.222.63MNone3 μs
40.1x
stat_minus_1
superstruct
Code snippetCode snippet
object(...)
2.0.25.44MNone3 μs
44.77x
stat_minus_1
sury
Code snippetCode snippet
S.schema(...)
11.0.0-rc.0320.77KJIT6 μs
72.71x
stat_minus_1
decoders
Code snippetCode snippet
object(...)
2.9.337.07KNone7 μs
84.13x
stat_minus_1
typebox
Code snippetCode snippet
Type.Object(...)
1.3.106.97MJIT11 μs
146.16x
stat_minus_1
@sapphire/shapeshift
Code snippetCode snippet
s.object(...)
4.0.01.1MNone38 μs
492.25x
stat_minus_1
zod/v3
Code snippetCode snippet
z.object(...)
4.4.3251.7MNone45 μs
579.79x
stat_minus_1
valibot
Code snippetCode snippet
v.object(...)
1.4.216.52MNone63 μs
807.76x
stat_minus_1
yup
Code snippetCode snippet
object(...)
1.7.112.02MNone108 μs
1_384.54x
stat_minus_1
sury (parser)
Code snippetCode snippet
S.parser(S.schema(...))
11.0.0-rc.0320.77KJIT109 μs
1_402.25x
stat_minus_1
ata-validator
Code snippetCode snippet
new Validator({...})
1.3.01.14KJIT133 μs
1_706.78x
stat_minus_1
typebox (schema compile)
Code snippetCode snippet
Schema.Compile(Type.Object(...))
1.3.106.97MJIT174 μs
2_234.28x
stat_minus_1
effect@beta
Code snippetCode snippet
Schema.struct(...)
4.0.0-beta.10126.04MNone175 μs
2_253.37x
stat_minus_1
effect@beta (decodeUnknownOption)
Code snippetCode snippet
Schema.decodeUnknownOption(
  Schema.struct(...)
)
4.0.0-beta.10126.04MNone185 μs
2_379.17x
stat_minus_1
typebox (compile)
Code snippetCode snippet
Compile(Type.Object(...))
1.3.106.97MJIT187 μs
2_404.8x
stat_minus_1
zod/mini
Code snippetCode snippet
z.object(...)
4.4.3251.7MJIT226 μs
2_914.23x
stat_minus_1
joi
Code snippetCode snippet
object(...)
18.2.323.54MNone232 μs
2_986.35x
stat_minus_1
effect
Code snippetCode snippet
Schema.struct(...)
3.22.026.04MNone440 μs
5_666.54x
stat_minus_1
effect (decodeUnknownEither)
Code snippetCode snippet
Schema.decodeUnknownEither(
  Schema.struct(...)
)
3.22.026.04MNone522 μs
6_715.82x
stat_minus_1
zod
Code snippetCode snippet
z.object(...)
4.4.3251.7MJIT534 μs
6_868.78x
stat_minus_1
arktype
Code snippetCode snippet
type(...)
2.2.31.36MJIT576 μs
7_407.38x
stat_minus_1
runtypes
Code snippetCode snippet
Object({...})
7.0.4252.38KNone1 ms
14_016.17x
stat_minus_1
typebox (script compile)
Code snippetCode snippet
Schema.Compile(Type.Script(...))
1.3.106.97MJIT2 ms
25_107.23x
stat_minus_2
typebox (script)
Code snippetCode snippet
Type.Script(...)
1.3.106.97MJIT2 ms
25_517.05x
stat_minus_2
ajv
Code snippetCode snippet
ajv.compile({...})
8.20.0363.1MJIT4 ms
51_400.6x
stat_minus_3
Created by eskimojo for Open Circle

Preferences

Style
Theme
NPM browser
Code ligatures