JSON to Protobuf スキーマコンバーター (proto3)
JSON オブジェクトや配列を貼り付けると、すぐに使える Protocol Buffers(proto3)スキーマが得られます。フィールドは proto スカラー型(string、int64、double、bool)にマッピングされ、配列は repeated フィールドに、ネストされたオブジェクトは個別の message になります。lower_snake_case でないキーには [json_name = "..."] オプションが追加され、標準 JSON マッピングが元のキーと一致します。すべてブラウザ内でローカルに実行され、JSON はアップロードされません。
—
Protobuf スキーマ
使い方
- 入力ボックスに JSON を貼り付けるか入力します。
- 必要に応じてルートメッセージ名を変更します(デフォルトは Message)。
- 出力ボックスから生成された .proto スキーマをコピーします。
よくある質問
- 数値はどう型付けされますか?
- 整数は int64、小数点を含む数値は double になります。別の幅が必要な場合は int32、uint32、float などに変更してください。
- null、空配列、ネストされた配列はどうなりますか?
- これらは google.protobuf.Value にマッピングされ(import "google/protobuf/struct.proto" が追加されます)、proto3 にはネイティブの null がなく、repeated repeated フィールドを許可しないためです。
- 一部のフィールドに json_name オプションがあるのはなぜですか?
- proto フィールド名は lower_snake_case です。標準の camelCase JSON マッピングが元のキーを再現できない場合、[json_name = "..."] オプションが追加され JSON が正しく往復します。
- 私の JSON はどこかに送信されますか?
- いいえ。変換は完全にブラウザ内で行われ、何もアップロードされません。
関連ツール
Protobuf デコーダ(.proto 不要)
base64 か hex の protobuf バイト列を貼り付けると、スキーマなしでフィールド番号、ワイヤ型、ネストしたメッセージ、文字列、packed 配列を読み取ります。
開発 0 0
JSON to GraphQL スキーマ(SDL)コンバーター
JSON オブジェクトをスカラーマッピング付きの GraphQL 型定義(SDL)にブラウザ上で変換します。
開発 0 0
JSON → TypeScript インターフェイス
JSON サンプルから TypeScript インターフェイスを生成 — キー名に沿って再帰的に型推論。
開発 0 0
JSON to Zod スキーマジェネレーター
JSON オブジェクトを型推論付きの Zod 検証スキーマにブラウザ上で変換します。
開発 0 0
JSON to Mongoose スキーマジェネレーター
JSON オブジェクトを型マッピングされたパスを備えた Mongoose スキーマにブラウザ上で変換します。
開発 0 0
JSON Schema ジェネレータ
JSON を貼り付けると、その形に合った draft-07 JSON Schema を生成 — 型推論・フォーマット検出・required フィールド入力。
開発 0 0