Good data.
Great things.
The tiny TypeScript validator with a big need for speed.
Turn unknown data into absolute confidence.
Zero dependencies. Zero second-guessing.
$ npm install @oxog/vld{ data: unknown }success: ?Heavy on the good stuff.
All the good stuff.
None of the baggage.
Built for developers who care about
what they ship. And how it feels to build.
Nothing weighing you down.
Zero runtime dependencies. A tree-shakeable Mini API. Take exactly what you need, and leave the rest.
Explore the Mini APIFeels like you’ve used it before.
Already know Zod? You already know VLD. Familiar schemas, familiar methods, one new import.
Make the switchSpeaks your users’ language.
Helpful errors in 27+ languages, with lazy loading. Because clarity shouldn’t get lost in translation.
Meet the localesLife’s complicated. Your validation doesn’t have to be.
See certainty
in action.
A familiar API. An unfamiliar amount of speed.
Give your data a little reality check.
import { v } from '@oxog/vld';const user = v.object({ name: v.string().min(2), email: v.string().email(), age: v.number().int().positive(),});type User = v.infer<typeof user>;user.safeParse(data);{
"name": "Alex Morgan",
"email": "alex@example.com",
"age": 28
}Your app has
places to be.
Validation shouldn’t be the thing slowing it down.
Less waiting. Less memory. More room to build.
Published repository measurements · 1M safeParse operations.
Results vary by schema and environment. Methodology ↗
Less unknown.
More let’s go.
One install. A familiar API. A little more confidence in every line.