minivalid
v1.0.1
Published
Ultra minimal composable validation utilities for JavaScript
Maintainers
Readme
minivalid.js
Tiny, dependency-free validation utilities for JavaScript.
minivalid.js provides simple, composable validation functions that can be combined into a lightweight validation pipeline. It is designed for small projects that do not need a full schema validation framework.
Installation
npm install minivalidUsage
import {
validate,
required,
validateEmail,
validatePassword,
min,
max,
isNumber
} from "minivalid";Basic example
const result = validate("[email protected]", [
required,
validateEmail
]);
console.log(result);
// { isValid: true, error: null }Password validation
const result = validate("P@ssw0rd123", [
required,
validatePassword
]);
console.log(result);
// { isValid: true, error: null }String validation rules
const result = validate("hello", [
required,
min(3),
max(10)
]);
console.log(result);
// { isValid: true, error: null }Number validation
const result = validate(42, [
required,
isNumber
]);
console.log(result);
// { isValid: true, error: null }How it works
Each validator is a function that returns:
(value) => ({
isValid: boolean,
error: string | null
});The validate function runs validators in order and stops at the first failure.
API
validate(value, validators)Runs an array of validator functions against a value.
Returns:
{
isValid: boolean,
error: string | null
}Built-in validators
required(value)
validateEmail(value)
validatePassword(value)
min(length)
max(length)
isNumber(value)Philosophy
minivalid.js is intentionally minimal.
It does not include:
schema validation async validation form state management external dependencies
It focuses only on small reusable validation primitives.
License
MIT
