TypeScript Validator

Open-source TypeScript projects categorized as Validator

Top 23 TypeScript Validator Projects

  • ajv

    The fastest JSON schema Validator. Supports JSON Schema draft-04/06/07/2019-09/2020-12 and JSON Type Definition (RFC8927)

  • Project mention: Popular Libraries For Building Type-safe Web Application APIs | dev.to | 2024-04-07

    Ajv’s documentation is available here.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • formily

    📱🚀 🧩 Cross Device & High Performance Normal Form/Dynamic(JSON Schema) Form/Form Builder -- Support React/React Native/Vue 2/Vue 3

  • class-validator

    Decorator-based property validation for classes.

  • Project mention: Popular Libraries For Building Type-safe Web Application APIs | dev.to | 2024-04-07

    You can learn more from the documentation here.

  • vee-validate

    ✅ Painless Vue forms

  • Project mention: Displaying multiple error messages on incorrect form entries with Vee-validate | Vue | dev.to | 2024-04-25

    In this blog post I am exploring the client-side form validation with Vee-validate (https://vee-validate.logaretm.com/v4/) and vee-validate/rules (https://www.npmjs.com/package/@vee-validate/rules).

  • express-validator

    An express.js middleware for validator.js.

  • typia

    Super-fast/easy runtime validations and serializations through transformation

  • Project mention: I made Swagger/OpenAPI type definitions and converter library | dev.to | 2024-04-30

    However, lacking of typia and nestia libraries is obvious. If you also need detailed Swagger/OpenAPI spec like me, but you need more detailed types/properties, or found something missed, please take a contribution.

  • marshal.ts

    A new full-featured and high-performance TypeScript framework

  • Project mention: Deepkit Framework: Revolutionizing Web App Development at Enterprise Scale | news.ycombinator.com | 2024-05-13
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • nestia

    NestJS Helper Libraries + TypeScript OpenAPI generator

  • Project mention: I revived TypeScript RPC framework for WebSocket (+NestJS) and Worker protocols from 8 years ago. | dev.to | 2024-05-18

    /** * @packageDocumentation * @module api.functional.calculate * @nestia Generated by Nestia - https://github.com/samchon/nestia */ //================================================================ import type { IConnection, Primitive } from "@nestia/fetcher"; import { PlainFetcher } from "@nestia/fetcher/lib/PlainFetcher"; import { WebSocketConnector } from "tgrid"; import type { Driver } from "tgrid"; import type { ICalcConfig } from "../../interfaces/ICalcConfig"; import type { ICalcEventListener } from "../../interfaces/ICalcEventListener"; import type { ICompositeCalculator } from "../../interfaces/ICompositeCalculator"; import type { IScientificCalculator } from "../../interfaces/IScientificCalculator"; import type { ISimpleCalculator } from "../../interfaces/ISimpleCalculator"; import type { IStatisticsCalculator } from "../../interfaces/IStatisticsCalculator"; /** * Health check API (HTTP GET). * * @controller CalculateController.health * @path GET /calculate/health * @nestia Generated by Nestia - https://github.com/samchon/nestia */ export async function health(connection: IConnection): Promise { return PlainFetcher.fetch(connection, { ...health.METADATA, path: health.path(), }); } export namespace health { export type Output = Primitive; export const METADATA = { method: "GET", path: "/calculate/health", request: null, response: { type: "application/json", encrypted: false, }, status: null, } as const; export const path = () => "/calculate/health"; } /** * Prepare a composite calculator. * * @controller CalculateController.composite * @path /calculate/composite * @nestia Generated by Nestia - https://github.com/samchon/nestia */ export async function composite( connection: IConnection, provider: composite.Provider, ): Promise { const connector: WebSocketConnector< composite.Header, composite.Provider, composite.Listener > = new WebSocketConnector(connection.headers ?? ({} as any), provider); await connector.connect( `${connection.host.endsWith("/") ? connection.host.substring(0, connection.host.length - 1) : connection.host}${composite.path()}`, ); const driver: Driver = connector.getDriver(); return { connector, driver, }; } export namespace composite { export type Output = { connector: WebSocketConnector; driver: Driver; }; export type Header = ICalcConfig; export type Provider = ICalcEventListener; export type Listener = ICompositeCalculator; export const path = () => "/calculate/composite"; } /** * Prepare a simple calculator. * * @controller CalculateController.simple * @path /calculate/simple * @nestia Generated by Nestia - https://github.com/samchon/nestia */ export async function simple( connection: IConnection, provider: simple.Provider, ): Promise { const connector: WebSocketConnector< simple.Header, simple.Provider, simple.Listener > = new WebSocketConnector(connection.headers ?? ({} as any), provider); await connector.connect( `${connection.host.endsWith("/") ? connection.host.substring(0, connection.host.length - 1) : connection.host}${simple.path()}`, ); const driver: Driver = connector.getDriver(); return { connector, driver, }; } export namespace simple { export type Output = { connector: WebSocketConnector; driver: Driver; }; export type Header = ICalcConfig; export type Provider = ICalcEventListener; export type Listener = ISimpleCalculator; export const path = () => "/calculate/simple"; } /** * Prepare a scientific calculator. * * @controller CalculateController.scientific * @path /calculate/scientific * @nestia Generated by Nestia - https://github.com/samchon/nestia */ export async function scientific( connection: IConnection, provider: scientific.Provider, ): Promise { const connector: WebSocketConnector< scientific.Header, scientific.Provider, scientific.Listener > = new WebSocketConnector(connection.headers ?? ({} as any), provider); await connector.connect( `${connection.host.endsWith("/") ? connection.host.substring(0, connection.host.length - 1) : connection.host}${scientific.path()}`, ); const driver: Driver = connector.getDriver(); return { connector, driver, }; } export namespace scientific { export type Output = { connector: WebSocketConnector; driver: Driver; }; export type Header = ICalcConfig; export type Provider = ICalcEventListener; export type Listener = IScientificCalculator; export const path = () => "/calculate/scientific"; } /** * Prepare a statistics calculator. * * @controller CalculateController.statistics * @path /calculate/statistics * @nestia Generated by Nestia - https://github.com/samchon/nestia */ export async function statistics( connection: IConnection, provider: statistics.Provider, ): Promise { const connector: WebSocketConnector< statistics.Header, statistics.Provider, statistics.Listener > = new WebSocketConnector(connection.headers ?? ({} as any), provider); await connector.connect( `${connection.host.endsWith("/") ? connection.host.substring(0, connection.host.length - 1) : connection.host}${statistics.path()}`, ); const driver: Driver = connector.getDriver(); return { connector, driver, }; } export namespace statistics { export type Output = { connector: WebSocketConnector; driver: Driver; }; export type Header = ICalcConfig; export type Provider = ICalcEventListener; export type Listener = IStatisticsCalculator; export const path = () => "/calculate/statistics"; }

  • validator.js

    :interrobang: Lightweight JavaScript form validation, that had minimal configuration and felt natural to use. No dependencies, support UMD. (by jaywcjlove)

  • suretype

    Typesafe JSON (Schema) validator

  • facile-validator

    Robust Frontend Forms Validation, inspired by Laravel Validation, Built for Simplicity of Use 🍬

  • nope-validator

    A small, simple, and fast JS validator. Like, wow that's fast. 🚀

  • lizod

    lightweight zod-like validator

  • Validatinator

    Validatinator is a simple, yet effective, HTML form validation library built for JavaScript/Typescript. Validatinator was originally loosely based off of Laravel's validation system.

  • toi

    A TypeScript validation library capable of inferring types

  • ty

    Validate untyped data and return well typed result.

  • vue-input-validator

    🛡️ Highly extensible & customizable input validator for Vue 2

  • directory-validator

    Tool to validate directory structures

  • standard-html

    Check if your HTML is compliant with W3C standards

  • Project mention: Show HN: Standard-HTML – Check if your HTML is compliant with W3C standards | news.ycombinator.com | 2023-09-17
  • validax

    A clean way to validate JSON schema in Typescript

  • tlsv

    Light Show Validator Module

  • validator-fluent

    Validation library for JavaScript/TypeScript with a strongly typed fluent API

  • deno_validate

    A validator for Deno based on validator.js. 🦕

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

TypeScript Validator discussion

Log in or Post with

TypeScript Validator related posts

  • I made Swagger/OpenAPI type definitions and converter library

    3 projects | dev.to | 30 Apr 2024
  • Popular Libraries For Building Type-safe Web Application APIs

    6 projects | dev.to | 7 Apr 2024
  • [DDD] Tactical Design Patterns Part 3: Presentation/Infrastructure Layer

    4 projects | dev.to | 16 Jan 2024
  • DRY Principle in Your AWS SAM Application with Middlewares

    1 project | dev.to | 28 Nov 2023
  • 6 Reasons why JSON Schema is worth your time

    5 projects | dev.to | 3 Oct 2023
  • [Typia] I made Protocol Buffer library of TypeScript, easiest in the world

    2 projects | dev.to | 18 Sep 2023
  • Good bye "typescript-is" (ancestor of "typia", 20,000x faster validator)

    3 projects | dev.to | 21 Jul 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 14 Jun 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source Validator projects in TypeScript? This list will help you:

Project Stars
1 ajv 13,494
2 formily 10,875
3 class-validator 10,611
4 vee-validate 10,610
5 express-validator 6,075
6 typia 4,176
7 marshal.ts 3,118
8 nestia 1,661
9 validator.js 546
10 suretype 493
11 facile-validator 356
12 nope-validator 347
13 lizod 195
14 Validatinator 107
15 toi 27
16 ty 21
17 vue-input-validator 17
18 directory-validator 14
19 standard-html 4
20 validax 4
21 tlsv 2
22 validator-fluent 2
23 deno_validate 1

Sponsored
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io