YAML/TOML/JSON相互変換

YAML・TOML・JSONの3形式を相互に変換できるツールです。入力に構文エラーがある場合は、エラーの行・列と該当箇所を表示します。設定ファイルの形式変換やCI設定の確認などに使え、すべてブラウザ内で処理されます。

設定ファイルなどの入力データはサーバーへ送信せず、すべてお使いのブラウザ内で変換しているため、APIキーを含む設定も安全に扱えます。

使い方

  1. 上部のボタンで、変換元と変換先の形式(JSON・YAML・TOML)を選びます。中央の矢印ボタンで入れ替えることもできます。
  2. 左側にデータを入力または貼り付けるか、「ファイルを開く」やドラッグ&ドロップでファイルを読み込みます。ファイルの拡張子から変換元の形式を自動で選択します。
  3. 入力と同時に右側へ変換結果が表示されます。構文エラーがある場合は、エラーの行・列と前後の行が表示されます。
  4. 「クリップボードへコピー」または「ダウンロード」で変換結果を保存します。JSON・YAMLではインデント幅も選べます。

このツールについて

YAML・TOML・JSONは、いずれも設定ファイルやデータ交換に広く使われるテキスト形式です。KubernetesやGitHub ActionsではYAML、RustのCargoやPythonのpyproject.tomlではTOML、APIやpackage.jsonではJSONが使われるなど、用途によって形式が異なるため、形式間の変換が必要になる場面がよくあります。

このツールでは、YAMLの解析・生成にyaml(ISCライセンス)、TOMLの解析・生成にsmol-toml(BSD-3-Clauseライセンス)を使用しています。構文エラーがあると変換結果の代わりにエラー箇所を表示するため、インデントのずれや括弧の閉じ忘れなどをすぐに見つけられます。

形式ごとに表現できるデータには違いがあります。TOMLにはnullがなく最上位は必ずキーと値の組になるため、そのような値は変換時に除外されるか、エラーとして表示されます。また、TOMLの日時型はISO 8601形式の文字列として出力されます。変換はすべてブラウザ内で完結し、データがサーバーへ送信されることはありません。

よくある質問

YAMLのコメントは変換後も残りますか?

残りません。JSONにはコメントの仕組みがないため、データとして解析した値だけを変換します。TOMLやYAMLへ変換した場合も、元のコメントは出力されません。

null を含むデータをTOMLに変換するとどうなりますか?

TOMLにはnullに相当する値がないため、値がnullの項目は出力から除外され、その旨の警告が表示されます。

複数ドキュメント(---区切り)のYAMLは変換できますか?

1つのドキュメントのみに対応しています。複数のドキュメントを含む場合はエラーになるため、ドキュメントごとに分けて変換してください。

入力したデータはサーバーに送信されますか?

送信されません。解析と変換はすべてブラウザ内のJavaScriptで行われます。