
Zodとは?
Zodは、TypeScriptを第一に考えたスキーマ宣言およびバリデーションライブラリです。
APIから返ってくるデータが期待通りの形式であるかを動的にチェックし、同時にTypeScriptの型としても抽出できるため、型安全性と信頼性を両立できます。
なぜZodが必要か?
TypeScriptの型定義はコンパイル時にのみ存在し、実行時には消失します。
APIから予期せぬデータが返ってきた場合、型定義と実際のデータが乖離し、実行時エラーを引き起こす可能性があります。
Zodを使用することで、不正なデータを入り口で遮断し、安全なデータのみをアプリ内に通すことができます。
JSONからZodスキーマを生成する
既存のJSONデータがある場合、その構造に合わせて手作業でZodスキーマ(z.object({...}))を記述するのは手間がかかります。
JSON→Zod変換ツール を使用すると、JSONを入力するだけで対応するZodスキーマを自動生成します。
生成されたコードには、バリデーションロジックと型抽出(z.infer<T>)の両方が含まれるため、即座にプロジェクトへ組み込めます。
基本的な使い方
import { z } from 'zod';
const Schema = z.object({
id: z.number(),
name: z.string(),
});
type DataType = z.infer<typeof Schema>;
このように、Zodを使うことで実行時のチェックとコンパイル時の型の両方を1つの定義で管理できるようになります。