ealush
vest
TypeScript

Vest ✅ Declarative validations framework

Last updated Jul 6, 2026
2.7k
Stars
91
Forks
44
Issues
0
Stars/day
Attention Score
86
Language breakdown
TypeScript 91.7%
JavaScript 6.7%
CSS 1.4%
Shell 0.1%
Go Template 0.0%
Files click to expand
README

Vest - Declarative validations framework

Vest

Vest Documentation

Join Discord Github Stars Next Tag Version Downloads bundlephobia Status


Vest is a validation framework that looks and feels like a unit testing framework. It is designed to be easy to learn, highly maintainable, and framework-agnostic.

Write your validations as if they were unit tests, and run them in your app.

import { create, test, enforce } from 'vest';

const suite = create(data => { test('username', 'Username is required', () => { enforce(data.username).isNotBlank(); });

test('username', 'Username must be at least 3 chars', () => { enforce(data.username).longerThanOrEquals(3); });

test('username', 'Username already taken', async () => { await doesUserExist(data.username); }); });

const result = await suite.run(formData);

Why Vest?

Writing form validations can be messy. Vest cleans it up by separating validation logic from feature logic and providing a familiar, powerful syntax.

💡 Easy to Learn

Vest adopts the syntax and style of unit testing frameworks (Mocha, Jest). If you've written a test, you already know Vest.

🎨 Framework Agnostic

React, Vue, Svelte, Angular, or Vanilla JS - Vest works everywhere. It doesn't depend on your UI library.

🛡️ Type Safe

Vest is written in TypeScript and provides first-class type support, including typed suites and results.

🔌 Standard Schema Support

Vest implements the Standard Schema spec, making it a drop-in replacement for Zod or Yup in libraries like React Hook Form.

⚡ SSR & Hydration

Built-in support for server-side validation and state hydration (runStatic, SuiteSerializer), enabling seamless full-stack validation flows.

🧩 Extendable & Composable

Create custom rules, compose existing ones, or use the optional schema validation (n4s) to enforce data structure.

Installation

npm i vest

Getting Started

Check out the Vest Documentation for guides, API references, and examples.

Playgrounds

Contribute

We welcome contributions! See CONTRIBUTING.md for details.

© 2026 GitRepoTrend · ealush/vest · Updated daily from GitHub