@johnny.reina/ajv-types
TypeScript icon, indicating that this package has built-in type declarations

0.2.0 • Public • Published

AJV-types @johnny.reina/ajv-types

Schema types and factory functions for AJV

An animated gif showing Intellisense usage for creating an AJV schema

Why?

Reading the AJV docs is a massive chore and it can be hard to defined a schema correctly.

Installation

npm i @johnny.reina/ajv-types

Usage

import A from "@johnny.reina/ajv-types";
const An = A; // Optional but nice to read if that's your thing
              // also you can name these whatever you want

const schema = An.Object({
  additionalProperties: false,
  properties: {
    username: A.String({ minLength: 3 }),
    password: A.String({ minLength: 16 }),
    profile: An.Object({
      additionalProperties: false,
      properties: {
        birthday: A.Format.Email,
        interests: An.Array({
          items: A.String()
        })
      }
    })
  }
});

Using just the types

The types can be used standalone to provide compile-type schema validation. Just import from @johnny.reina/ajv-types/types;

import { ObjectSchema } from "@johnny.reina/ajv-types";

An animated gif showing Intellisense usage for creating an AJV schema without factory functions

Dependencies (0)

    Dev Dependencies (8)

    Package Sidebar

    Install

    npm i @johnny.reina/ajv-types

    Weekly Downloads

    0

    Version

    0.2.0

    License

    MIT

    Unpacked Size

    12.9 kB

    Total Files

    9

    Last publish

    Collaborators

    • johnny.reina