YAML / JSON を変換
標準的なマップ、配列、文字列、数値、真偽値をブラウザ内で相互変換します。
使い方とユースケース
CI設定、docker-compose、AIが返した設定断片などをJSONへ変換したり、JSONを読みやすいYAMLへ戻したりできます。
- YAMLは一般的なキー/値、ネスト、配列を対象にしています。アンカー、タグ、複雑な複数行スカラーはエラーとして扱います。
- 入力は外部へ送信せず、同じ入力と変換方向から同じ結果を返します。
YAML⇄JSON変換は、設定ファイルやAI出力でよく使われるYAMLとJSONを、ブラウザ内だけで相互変換するツールです。マップ(オブジェクト)、配列、文字列、数値、真偽値、null、インラインのJSON形式([]や{})といった一般的な構造に対応し、変換方向はYAML→JSONとJSON→YAMLの2種類から選べます。docker-composeやCI設定ファイルの内容をJSONとして扱いたいときや、逆にJSONを人が読みやすいYAMLに直したいときに使えます。
使い方・サンプル・結果例・注意点
使い方
入力欄にYAMLまたはJSONを貼り付け、変換方向を選んで「変換」ボタンを押すと、結果欄に変換後のテキストが表示されます。
サンプル入力
name: 菊丸ツゥルズ privateProcessing: true items: - JSON - YAML settings: indent: 2 deterministic: true
結果例
このYAMLを「YAML → JSON」で変換すると、{"name": "菊丸ツゥルズ", "privateProcessing": true, "items": ["JSON", "YAML"], "settings": {"indent": 2, "deterministic": true}} のように、文字列・真偽値・配列・ネストしたオブジェクトを正しく型変換したJSONが2スペースインデントで出力されます。逆に「JSON → YAML」を選んでJSONを貼り付けると、キーごとに改行・インデントされたYAMLが生成されます。
注意点
対応するのは標準的なキー/値、ネスト、配列、基本的なスカラー型(文字列・数値・真偽値・null)です。アンカー(&や*)、タグ(!)、複数行スカラー(|や>)はこのツールでは扱えずエラーになります。タブインデントのYAMLも非対応で、スペースインデントに置き換える必要があります。# はクォート外で行頭または空白の後にある場合のみコメントとして扱われます。入力は50,000文字までで、外部送信せずブラウザ内で完結します。
こんなときに使えます
- インフラエンジニアが、docker-composeやKubernetesマニフェスト(YAML)の一部をJSONに変換し、jqなどJSON対応ツールで処理する
- バックエンド開発者が、AIが生成したYAML形式の設定案をJSONに変換し、自分のアプリケーションの設定読み込み処理でそのまま使えるか確認する
- ドキュメント作成者が、APIレスポンス例のJSONを人間が読みやすいYAML形式に変換し、設計資料に貼り付ける
- CI/CD担当者が、GitHub ActionsなどのYAMLワークフロー定義の一部をJSON化して、構文エラーの有無や構造を素早く確認する
よくある質問
YAMLのアンカー(&anchor)やエイリアス(*alias)は使えますか?
使えません。アンカー、エイリアス、タグ(!!strなど)、複数行スカラー(|や>で始まる値)はこのツールのMVP範囲外としてエラーになります。
タブでインデントしたYAMLを貼り付けるとどうなりますか?
「タブインデントは扱えません。スペースに置き換えてください。」というエラーになります。エディタの設定でスペースインデントに変換してから貼り付けてください。
JSONをYAMLに変換したとき、配列やネストしたオブジェクトはどう表示されますか?
配列は各要素の先頭に「- 」を付けて表示し、オブジェクトはキーごとに改行してインデントを2スペースずつ深くして表示します。
コメント付きのYAMLは変換できますか?
行頭または空白の後にある#から行末までは行コメントとして除去されてから変換されます。クォート文字列内の#はコメントとして扱われません。
変換結果は外部に送信されますか?
送信されません。すべての変換処理はブラウザ内のJavaScriptで完結し、同じ入力と変換方向であれば常に同じ結果が返る決定論的な処理です。