Zodとは
TypeScript向けのスキーマ宣言とデータ検証のためのライブラリのこと。
型安全な方法でデータ構造を定義し、それに基づいてバリデーションを行うことが可能。
インストール方法
# npmの場合
npm install zod
# yarnの場合
yarn add zod
# pnpmの場合
pnpm add zod
基本的な使い方
引数に渡した値が問題無ければ、その値を返し、問題があればエラーを返す。
import { z } from 'zod'
const stringScheme = z.string()
stringScheme.parse("hogefuga")
// => "hogefuga"
stringScheme.parse(true)
// => throws ZodError
プリミティブ型のスキーマ作成
import { z } from "zod";
z.string(); // string型
z.number(); // number型
z.bigint(); // bigint型
z.boolean(); // boolean型
z.date(); // date型
z.symbol(); // シンボル型
z.undefined(); // undefined型
z.null(); // null型
z.void(); // void型
z.any(); // any型
z.unknown(); // unknown型
z.never(); // never型
オブジェクト型のスキーマ作成
const Dog = z.object({
name: z.string(),
age: z.number(),
ownerId: z.number()
});
zodからTypeScriptの型を作成する
const FormData = z.object({
name: z.string().min(2).max(50),
email: z.string().email(),
message: z.string().min(5),
});
type FormDataType = z.infer<typeof FormData>;
参考
Zod | Documention
Zodの基本的な使い方
Zodスキーマでプロンプト生成を行い構造化データを自由自在に扱えて、LLMプロダクト開発が圧倒的に効率化した話
TypeScript開発に欠かせない?Zodライブラリの基本
Zodによるバリデーションに入門する