Конвертер YAML
Конвертер YAML ↔ JSON: мульти-документы — массивом, дубли ключей — ошибка с позицией; JSON в YAML с отступом 2, блок-стилем, без алиасов.
Результат можно передать дальше:Открыть в JSON-форматтере
Результат
YAML → JSON: мульти-документы собираются массивом. JSON → YAML: отступ 2, блок-стиль, без алиасов.
Ошибки — с позицией, данные — не покидают вкладку
Синтаксическая ошибка и дублирующийся ключ показываются строкой и столбцом; мульти-документ через «---» конвертируется в JSON-массив. Сетевых запросов страница не делает; введённые документы попадают в историю браузера только до закрытия вкладки.
Последние результаты
Введённые данные остаются в истории этого браузера только до закрытия вкладки и не попадают в экспорт на странице «Закладки». Значения скрыты по умолчанию — раскрываются кнопкой «Показать».
Готовые примеры
Найдено: 4 из 4
- Конвертировать Kubernetes-манифест в JSONДеплоймент с репликами, селектором и лимитами ресурсов подставлен в поле ввода: «YAML → JSON» превращает его в JSON — удобно для API-запросов и jq.
- Разобрать docker-compose.yml на JSONCompose-файл с веб-сервисом, базой данных и именованным volume в поле ввода: конвертация покажет его древовидную структуру как JSON с отступом 2.
- YAML workflow GitHub Actions в JSONCI-воркфлоу с checkout, setup-node и тестами: после «YAML → JSON» удобно сравнивать шаги программно или подставлять в шаблоны.
- Конвертировать JSON в YAMLГотовый JSON в режиме «JSON → YAML»: на выходе — блок-стиль с отступом 2, без алиасов; опциями добавляются маркеры «---» и перенос длинных строк.
Что это и как пользоваться
Конвертер переводит YAML в JSON и обратно. Несколько документов в одном файле, разделённых ---, собираются в массив, а не теряются: по массиву видно, что в файле было три конфига, а не один.
Дубли ключей в одном объекте считаются ошибкой с указанием позиции. Это строже, чем у большинства парсеров, где последнее значение молча перекрывает предыдущее и опечатка в имени ключа обходится дорого.
Якоря и алиасы поддерживаются: &anchor и *ref разворачиваются в значение, а не остаются строкой. Ссылка на несуществующий якорь и рекурсивный алиас дают понятную ошибку, а не бесконечное развёртывание.
При обратном преобразовании есть два флажка: маркеры документов (--- в начале) и перенос длинных строк по 80 символам. Оба нужны, когда результат читают люди, а не только машина.
Ввод ограничен 1 млн знаков, а развёрнутые якоря — 2 млн узлов: защита от «бомбы» с рекурсивными ссылками, которая раздувает документ в памяти.
Когда пригодится
- Перевести конфиг приложения в JSON для системы, которая принимает только строгий JSON.
- Прочитать чужой YAML: увидеть явную структуру и найти, где отступ съехал.
- Проверить конфиг до деплоя: дубль ключа всплывёт как ошибка, а не как тихо потерянное значение.
- Собрать несколько документов в массив, чтобы обработать их одним проходом.
- Проверить конфиг CI, где общие настройки вынесены в якоря, и убедиться, что после конвертации значения подставились.
- Сравнить два конфига после конвертации в JSON: отступы больше не мешают diff.
Чего инструмент не делает
- Комментарии не сохраняются: при конвертации в JSON и обратно они исчезают, потому что JSON их не поддерживает.
- Поддержка YAML неполная: сложные типы вроде множеств и нестандартных тегов могут не разбираться.
- Многострочные блоки (| и >) переходят в JSON строкой с переводами строк, а обратно в исходный вид с отступами не восстанавливаются.
- Переменные окружения и ссылки между файлами не раскрываются — это делает загрузчик конфигов, а не конвертер.
- Ошибка указывает строку, но не всегда точный символ: для отступов этого хватает, для сложных конструкций — нет.
Примеры
- Вход
name: Мария role: admin- Выход
{"name":"Мария","role":"admin"}- Вход
--- a: 1 --- b: 2- Выход
[{"a":1},{"b":2}]