Конвертер .env в JSON
Преобразуйте содержимое .env файла в JSON с автоопределением типов, вложенными ключами и сохранением комментариев. Работает полностью в браузере.
Вставьте содержимое .env файла — и инструмент мгновенно преобразует его в JSON прямо в браузере. Числа и булевы значения распознаются автоматически (DEBUG=true превращается в настоящий boolean, а не в строку "true"), ключи с точками вроде DB.HOST становятся вложенными объектами, а строки-комментарии сохраняются в поле $comments вместо того, чтобы бесследно исчезнуть. Любую из этих опций можно отключить. Файл никуда не загружается — вся конвертация происходит локально, на стороне клиента.
О конвертере .env в JSON
Файлы окружения (.env) — это обычный текст в формате KEY=VALUE, который легко писать, но неудобно скармливать коду, ожидающему структурированную конфигурацию. Этот инструмент разбирает синтаксис .env — включая комментарии #, значения в кавычках и оба разделителя, = и :, — и выдаёт JSON-объект, который можно сразу подставить в загрузчик конфигурации, тестовую заглушку или использовать при отладке. Результат конвертации регулируют три переключателя: автоопределение типов превращает похожие на числа и булевы значения строки в настоящие типы JSON, вложение по ключам с точками превращает FEATURE.CACHE.TTL в { "FEATURE": { "CACHE": { "TTL": ... } } }, а обработка комментариев сохраняет или отбрасывает строки #, документировавшие исходный файл.
Вам также может понадобиться
Вставьте содержимое .env файла — и инструмент мгновенно преобразует его в JSON прямо в браузере. Числа и булевы значения распознаются автоматически (DEBUG=true превращается в настоящий boolean, а не в строку "true"), ключи с точками вроде DB.HOST становятся вложенными объектами, а строки-комментарии сохраняются в поле $comments вместо того, чтобы бесследно исчезнуть. Любую из этих опций можно отключить. Файл никуда не загружается — вся конвертация происходит локально, на стороне клиента.
Как конвертировать .env в JSON
- 1
Вставьте содержимое .env
Скопируйте содержимое своего .env файла в панель ввода или нажмите на иконку колбы, чтобы загрузить пример с комментариями, числами и булевыми значениями.
- 2
При необходимости настройте дополнительные параметры
Откройте Advanced options, чтобы включить или выключить автоопределение типов, вложение ключей с точками (и его разделитель), а также решить, сохранять ли комментарии в поле $comments или игнорировать их. По умолчанию используется распространённое поведение: типы определяются, ключи вкладываются, комментарии сохраняются.
- 3
Нажмите «Конвертировать»
Парсер построчно читает файл, убирает комментарии и кавычки и формирует JSON-объект в панели результата. Если после этого изменить любую опцию, конвертация пересчитывается мгновенно — повторно нажимать «Конвертировать» не нужно.
- 4
Скопируйте или скачайте JSON
Используйте иконку копирования, чтобы вставить JSON в другое место, или скачайте его как .json файл. Нужно наоборот? Нажмите иконку смены направления, чтобы перейти на JSON в Env.
Источники
- The Twelve-Factor App — Config
Широко цитируемая методология, популяризировавшая хранение конфигурации в переменных окружения — именно на этом соглашении строятся .env файлы.
- dotenv (motdotla) — README
Эталонная реализация и фактическая спецификация синтаксиса .env файлов: строки KEY=VALUE, комментарии # и значения в кавычках.
- RFC 8259 — The JSON Data Interchange Format
Спецификация IETF для формата JSON, который производит этот инструмент.
Связанные инструменты
JSON в Env
Конвертируйте объект JSON обратно в формат .env KEY=VALUE, с разворачиванием ключей с точками и восстановлением комментариев.
Properties в JSON
Конвертируйте файл Java .properties в JSON с точным (без потерь) сохранением комментариев и порядка ключей.
JSON Formatter
Вставьте необработанный JSON и мгновенно получите отформатированный, подсвеченный и провалидированный результат.
YAML в JSON
Конвертируйте конфигурационные файлы YAML в JSON и обратно — ещё одна распространённая пара форматов конфигурации.
Env в JSON — часто задаваемые вопросы
- Как конвертировать .env файл в JSON онлайн?
- Вставьте содержимое .env файла в панель ввода и нажмите «Конвертировать». Инструмент разбирает каждую строку KEY=VALUE и выводит отформатированный JSON-объект в панели результата, который можно скопировать или скачать как .json файл.
- Загружает ли этот инструмент мой .env файл на сервер?
- Нет. Разбор происходит полностью в браузере на JavaScript — никакие сетевые запросы с содержимым файла не отправляются, а это важно, ведь .env файлы часто хранят секреты вроде ключей API и паролей от базы данных.
- Сохраняются ли комментарии при конвертации .env в JSON?
- Да, по умолчанию. Строки-комментарии (начинающиеся с #) сохраняются в выходном JSON как поле $comments, сопоставляющее каждый ключ с комментарием, который ему предшествовал. Чтобы отбросить их, переключите опцию Comments в значение «Ignore» в разделе Advanced options.
- Как обрабатываются булевы значения и числа при конвертации .env в JSON?
- При включённой опции Infer types (по умолчанию) значения вроде true, false или 5432 преобразуются в настоящие булевы и числовые типы JSON вместо строк. Отключите Infer types в Advanced options, чтобы сохранить каждое значение как обычную строку — в точности как в исходном .env файле.
- Можно ли превратить ключи .env с точками во вложенные объекты JSON?
- Да. При включённой опции «Dotted keys → nested» (разделитель по умолчанию — «.») ключ вроде APP.CACHE.TTL=60 превращается в { "APP": { "CACHE": { "TTL": 60 } } }. Отключите переключатель, чтобы оставить исходный плоский ключ с точками без изменений.
- В чём разница между .env и JSON для хранения конфигурации?
- Файл .env — это плоский список пар KEY=VALUE, предназначенный для переменных окружения процесса (см. рекомендации по конфигурации в The Twelve-Factor App), тогда как JSON поддерживает вложенные структуры и нативные типы данных. Конвертация позволяет просматривать или сравнивать значения .env как структурированные данные либо передавать их в инструменты, принимающие только JSON.
- Поддерживаются ли значения в кавычках в .env файлах?
- Да. У значений в одинарных или двойных кавычках, например NAME="My App", кавычки автоматически убираются ещё до применения автоопределения типов.