Quick start

Install, define a schema, parse. Three steps, one dependency (none).

Install

npm install @denisetiya/valdix

First schema

import v from "@denisetiya/valdix";

const Signup = v.object({
  name: v.string().min(3),
  email: v.string().email(),
  age: v.number().min(18),
});

type Signup = v.Infer<typeof Signup>;
// → { name: string; email: string; age: number }

First error

v.useLang("id");
const r = Signup.safeParse({ name: "", email: "bad", age: 15 });
// r.errors[0].message === "name minimal 3 karakter"
// r.errors[1].message === "Alamat email tidak valid"
// r.errors[2].message === "age minimal 18"

Each error carries path, code, message, field, and description. Map r.errors directly in your UI.

Next