JSONからコード生成
JSONサンプルからTypeScript・Python・Go・Rust・Java・C#などのコードを生成。型・クラス・検証スキーマを貼り付けるだけで作成できます。
- JSONをTypeScriptに変換|型を手で書かずに済ませる JSONのサンプルをTypeScriptのインターフェースに変換します。入れ子のオブジェクトにも名前付きの型が付くので、受け取ったデータがそのまま貼れるファイルになります。
- JSONをPythonに変換|3つの書き方から選んで出力する JSONのサンプルをPythonのクラスに変換します。Pydantic、dataclass、TypedDict から、プロジェクトで使っている書き方を選んで、そのまま models.py に貼れます。
- JSONをGoに変換|jsonタグ付きの構造体をそのまま貼れる形で JSONのサンプルを、jsonタグ付きのGo構造体に変換します。列は gofmt が揃えるとおりに整列して出てくるので、貼り付けたあとに整える手間がありません。
- JSONをRustに変換|serdeのderive付き構造体にする JSONのサンプルを、serde の derive が付いたRustの構造体に変換します。名前は snake_case になり、元のキーも保たれるので、from_str が一度で通ります。
- JSONをJavaに変換|Jacksonがそのまま読めるrecordに JSONのサンプルをJavaのrecordに変換します。型はボックス型になり、名前を変えた箇所には Jackson の注釈が付くので、届いたJSONをそのまま読み込めます。
- JSONをC#に変換|System.Text.Jsonが読めるrecordに JSONのサンプルをC#のrecordまたはクラスに変換します。名前を変えたプロパティには JsonPropertyName 属性が付くので、逆シリアル化でもキーを見失いません。
- JSONをKotlinに変換|そのまま貼れるdata classにする JSONのサンプルをKotlinのdata classに変換します。プロパティ名はJSONの書き方のまま、必要な場所はバッククォートで囲まれ、貼ればそのまま通ります。
- JSONをSwiftに変換|CodingKeysまで書いて出力する JSONのサンプルを、Codableに準拠したSwiftの構造体に変換します。プロパティ名にできないキーは CodingKeys で拾い直され、その定義まで書き出されます。
- JSONをDartに変換|fromJsonとtoJsonまで書き出す JSONのサンプルをDartのクラスに変換します。元のキーは生成された fromJson と toJson の中にあるので、対応づけは読める・追えるコードとして手元に残ります。
- JSONをPHPに変換|コンストラクタで昇格したクラスにする JSONのサンプルを、コンストラクタで昇格したプロパティを持つPHP 8のクラスに変換します。名前を変えたプロパティには、元のキーが注釈としてすぐ隣に残ります。
- JSONをScalaに変換|キーを保ったcase classにする JSONのサンプルをScalaのcase classに変換します。フィールド名はJSONのキーのまま、必要な場所はバッククォートで囲まれ、codec にそのまま渡せます。
- JSONをZodに変換|受け取ったところで検証できる形にする JSONのサンプルをZodのスキーマに変換します。オブジェクトごとに一つ、使う前に宣言され、z.infer を使えば同じ定義から TypeScript の型も得られます。
- JSONをJSON Schemaに変換|CIで使える取り決めにする JSONのサンプルを、draft 2020-12 の JSON Schema に変換します。必須キーと additionalProperties は切り替えられるので、意図どおりの取り決めになります。
- JSONをGraphQLに変換|schemaファイルに貼れるSDLに JSONのサンプルをGraphQLのSDL型に変換します。入れ子のオブジェクトも独立した型になるので、schema.graphql に貼ってすぐ問い合わせを書けます。
- JSONをio-tsに変換|復号と型定義をまとめて手に入れる JSONのサンプルをio-tsのコーデックに変換します。オブジェクトごとに一つ、使う前に宣言され、TypeOf を使えば同じ宣言から静的な型もそのまま取り出せます。
- JSONをFlowに変換|プロジェクトで読み込める型別名にする JSONのサンプルをFlowの型別名に変換します。入れ子のオブジェクトにも名前が付くので、受け取ったデータが、必要な場所で読み込める型として手元にそのまま残ります。
- JSONをPropTypesに変換|形の違うpropが開発中に分かる JSONのサンプルをPropTypesのshapeに変換します。オブジェクトごとに一つ、既定で必須になるので、形の違うpropは開発中のコンソールに出てきます。
- JSONをJSDocに変換|素のJSでも補完が効くようにする JSONのサンプルをJSDocのtypedefに変換します。オブジェクトごとに名前付きの @typedef ができ、素のJavaScriptのままエディタの補完が効くようになります。