Конвертер .env в JSON
Вставьте файл .env — получите JSON мгновенно. Пароли БД, API-ключи и токены не покидают браузер: 100% приватно, без загрузки, парсер dotenv.
Настройки · 2 пробела · строки
Что такое файл .env?
Файл .env (dotenv-файл) — это простой текстовый список пар KEY=VALUE, используемый для того, чтобы держать конфигурацию и секреты вне исходного кода. Это фактический стандарт для переменных окружения в Node.js, Vite, Next.js, Python, Ruby, Docker Compose и почти любом современном фреймворке — библиотека dotenv и её порты загружают файл и внедряют каждую пару в окружение процесса. Поскольку файл часто содержит пароли БД, API-ключи, клиентские секреты OAuth и токены доступа, его почти всегда добавляют в git-ignore и считают конфиденциальным.
Преобразование файла .env в JSON — частая задача: нужно передать конфигурацию инструменту, читающему JSON, проверить её по JSON Schema, импортировать в менеджер секретов, сгенерировать типизированные объекты конфигурации или просто бегло осмотреть длинный .env как структурированные данные. Этот конвертер превращает плоский список пар в единый объект JSON, по одному свойству на ключ.
Этот инструмент построен на нескольких осознанных решениях:
**1. Строки по умолчанию, типы по запросу.** dotenv никогда не приводит типы — во время выполнения каждое значение process.env является строкой. Вывод по умолчанию точно это учитывает, поэтому JSON совпадает с тем, что реально видит ваше приложение. Когда вам нужен типизированный JSON, необязательный переключатель «Определять типы» повышает числа, логические значения и null без кавычек, тогда как значения в кавычках остаются строками, ведь кавычки — это явный сигнал.
**2. Точный разбор dotenv.** Комментарии, пустые строки, префикс export, одинарные и двойные кавычки, экранирующие последовательности, многострочные значения в двойных кавычках и встроенные комментарии у значений без кавычек обрабатываются так же, как их обрабатывает библиотека dotenv — никаких сюрпризов при сравнении JSON с тем, что загружает ваше приложение.
**3. Безопасность при дублирующихся ключах.** Когда ключ определён дважды, побеждает более позднее значение, а предупреждение сообщает, какие ключи дублировались, чтобы случайно затенённый секрет не ускользнул незамеченным.
**4. 100% приватность на стороне браузера.** Ваши данные .env никогда не покидают браузер. Нет загрузки, нет обращения к серверу и нет логирования — отсутствие сетевых запросов можно проверить во вкладке «Сеть» в DevTools. Это единственный ответственный способ преобразовать реальный .env онлайн, ведь файл по сути является списком учётных данных.
После преобразования вы можете красиво отформатировать или проверить результат с помощью форматировщика JSON, экранировать его для вставки в другую строку с помощью JSON Escape или пойти в обратную сторону с помощью парного конвертера JSON в .env. Если ваша конфигурация хранится в YAML, попробуйте YAML в JSON.
// Parse a .env file to a JSON object in Node.js using dotenv
import { parse } from 'dotenv';
const envText = `# Database
DATABASE_URL=postgres://user:pass@localhost:5432/mydb
DEBUG=true`;
// dotenv.parse returns a plain object of string values
const parsed = parse(envText);
// Every value is a string, just like process.env
const json = JSON.stringify(parsed, null, 2);
console.log(json);
// {
// "DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
// "DEBUG": "true"
// } Ключевые возможности
Точный разбор dotenv
Обрабатывает комментарии, префикс export, одинарные и двойные кавычки, экранирующие последовательности (\n \t \r \\ \"), многострочные значения в двойных кавычках и встроенные комментарии — в точности так, как это делает библиотека dotenv.
Строки по умолчанию, типы по запросу
По умолчанию значения являются строками JSON, чтобы соответствовать поведению dotenv во время выполнения. Включите «Определять типы», чтобы повысить числа, логические значения и null без кавычек; значения в кавычках всегда остаются строками.
Предупреждения о дублирующихся ключах
Если ключ определён дважды, побеждает последнее значение (поведение dotenv), а предупреждение перечисляет каждый дублированный ключ, чтобы молчаливо перезаписанный секрет не ускользнул незамеченным.
Живое преобразование
Вывод JSON обновляется мгновенно по мере набора или вставки. Большие входные данные (более 200 КБ) автоматически переключаются в ручной режим с кнопкой «Преобразовать», чтобы сохранить отзывчивость браузера.
Отступ 2 или 4 пробела
Переключайтесь между отступом в 2 и 4 пробела для вывода JSON, чтобы соответствовать стилю вашей кодовой базы или последующему инструментарию.
100% приватность на стороне браузера
Весь разбор выполняется локально в вашем браузере. Ваши данные .env — пароли БД, API-ключи, токены — никогда не загружаются, не логируются и не хранятся ни на каком сервере.
Примеры
Файл .env для Node / Vite
# Database DATABASE_URL=postgres://user:pass@localhost:5432/mydb DATABASE_POOL_SIZE=10 # Auth JWT_SECRET="super secret value" SESSION_TIMEOUT=3600 # Feature flags ENABLE_SIGNUP=true VITE_API_BASE=https://api.example.com
{
"DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
"DATABASE_POOL_SIZE": "10",
"JWT_SECRET": "super secret value",
"SESSION_TIMEOUT": "3600",
"ENABLE_SIGNUP": "true",
"VITE_API_BASE": "https://api.example.com"
} Типичный файл .env для Node.js / Vite. По умолчанию каждое значение становится строкой JSON (стандарт dotenv). Строки-комментарии и пустые строки пропускаются. Включите «Определять типы», если хотите, чтобы 10 → число, а true → логическое значение.
Окружение Docker Compose
POSTGRES_DB=mydb POSTGRES_USER=admin POSTGRES_PASSWORD=s3cr3t! PGDATA=/var/lib/postgresql/data TZ=UTC NGINX_HOST=example.com NGINX_PORT=80
{
"POSTGRES_DB": "mydb",
"POSTGRES_USER": "admin",
"POSTGRES_PASSWORD": "s3cr3t!",
"PGDATA": "/var/lib/postgresql/data",
"TZ": "UTC",
"NGINX_HOST": "example.com",
"NGINX_PORT": "80"
} Превратите env_file, который читает ваш стек Docker Compose, в JSON, чтобы загрузить его в скрипт, валидатор конфигурации или менеджер секретов. Ничего не загружается на сервер — безопасно для реальных учётных данных.
Шаблон CI-секретов с префиксом export
export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY export AWS_REGION=us-east-1 export DEPLOY_ENV=production
{
"AWS_ACCESS_KEY_ID": "AKIAIOSFODNN7EXAMPLE",
"AWS_SECRET_ACCESS_KEY": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"AWS_REGION": "us-east-1",
"DEPLOY_ENV": "production"
} Файлы .env в стиле shell часто начинают каждую строку с export, чтобы их можно было подключить через source. Парсер автоматически удаляет префикс export и даёт чистые ключи JSON.
Сложный .env: кавычки, экранирование, многострочные значения и встроенные комментарии
APP_NAME=My App # unquoted value, inline comment stripped GREETING="Hello,\nWorld" # double quotes: \n becomes a real newline LITERAL='no \n escapes here' # single quotes: kept literally PRIVATE_KEY="-----BEGIN KEY----- line two line three -----END KEY-----" EMPTY=
{
"APP_NAME": "My App",
"GREETING": "Hello,\nWorld",
"LITERAL": "no \\n escapes here",
"PRIVATE_KEY": "-----BEGIN KEY-----\nline two\nline three\n-----END KEY-----",
"EMPTY": ""
} Показывает все граничные случаи dotenv сразу: встроенные комментарии у значений без кавычек удаляются, значения в двойных кавычках обрабатывают экранирование \n \t \r \\ \", значения в одинарных кавычках сохраняются буквально, а значение в двойных кавычках может занимать несколько строк до закрывающей кавычки (удобно для PEM-ключей).
Как пользоваться
- 1
Вставьте ваш файл .env
Введите или вставьте содержимое .env в поле ввода выше. Можно также нажать «Загрузить пример», чтобы попробовать .env для Node/Vite, env-файл Docker Compose или шаблон CI-секретов.
- 2
Смотрите живой вывод JSON
JSON появляется мгновенно в панели вывода. Включите «Определять типы», если хотите числа и логические значения вместо строк, и выберите отступ в 2 или 4 пробела.
- 3
Скопируйте или скачайте
Нажмите «Копировать», чтобы взять JSON в буфер обмена, или «Скачать», чтобы сохранить как файл .json — готовый для загрузчика конфигурации, менеджера секретов или любого инструмента, читающего JSON.
Частые ошибки в .env
Отсутствие знака = в строке
Каждая непустая строка без комментария должна быть парой KEY=VALUE. Строку без знака = разобрать нельзя, и инструмент сообщает об ошибке с номером строки. Голый ключ без значения следует записывать как KEY= (пустое значение).
DATABASE_URL DEBUG true
DATABASE_URL= DEBUG=true
Пробелы вокруг знака =
dotenv разделяет по первому = без пробелов вокруг него. Запись KEY = value делает ключом 'KEY ' (с завершающим пробелом), а значением ' value' (с ведущим пробелом). Уберите пробелы или заключите значение в кавычки, если оно должно содержать ведущий пробел.
API_KEY = abc123
API_KEY=abc123
Значение без кавычек, съеденное встроенным комментарием
В значении без кавычек пробел, за которым следует #, начинает встроенный комментарий, и всё после него отбрасывается. Если ваше значение законно содержит #, заключите значение в кавычки, чтобы # сохранился.
COLOR=#ff0000
COLOR="#ff0000"
Ожидание экранирования в одинарных кавычках
Значения в одинарных кавычках буквальны — \n остаётся обратной косой чертой и буквой n, оно не становится переводом строки. Используйте двойные кавычки, когда хотите, чтобы экранирующие последовательности вроде \n, \t или \" обрабатывались.
GREETING='Hello\nWorld'
GREETING="Hello\nWorld"
Незакрытая двойная кавычка в многострочном значении
Значение в двойных кавычках может занимать несколько строк, но должно быть закрыто соответствующей двойной кавычкой. Если закрывающая кавычка отсутствует, парсер продолжает поглощать строки до конца файла. Убедитесь, что многострочные секреты вроде PEM-ключей заканчиваются закрывающей кавычкой.
KEY="-----BEGIN----- line two
KEY="-----BEGIN----- line two -----END-----"
Молчаливо перезаписанные дублирующиеся ключи
Если один и тот же ключ встречается дважды, побеждает последнее значение, а более раннее теряется. Инструмент предупреждает вас, но чище всего убрать дубликат, чтобы нужное значение было однозначным.
PORT=3000 PORT=8080
PORT=8080
Частые сценарии использования
- Передача конфигурации в инструментарий на базе JSON
- Преобразуйте файл .env в JSON, чтобы загрузить конфигурацию окружения в инструменты, скрипты и SDK, которые читают JSON, а не переменные окружения — валидаторы конфигурации, проверки по схеме и генераторы кода.
- Импорт секретов в менеджер
- Многие менеджеры секретов (AWS Secrets Manager, Vault, Doppler) принимают JSON для массового импорта. Сначала преобразуйте файл .env в объект JSON, затем загрузите весь набор за одну операцию вместо переменной за переменной.
- Беглый осмотр длинного .env
- Превратите разросшийся файл .env в структурированный JSON с отступами, чтобы просматривать ключи, замечать дубликаты по предупреждению и проверять конфигурацию в читаемом формате перед фиксацией изменений.
- Генерация типизированных объектов конфигурации
- Включите «Определять типы», чтобы получить в JSON числа, логические значения и null, затем передайте его в типизированный слой конфигурации или на шаг JSON-to-TypeScript, чтобы вывести интерфейс для ваших переменных окружения.
- Проверка по JSON Schema
- Преобразуйте .env в JSON и прогоните его через валидатор JSON Schema, чтобы обеспечить обязательные ключи, форматы значений и допустимые перечисления в CI — отлавливая неправильно настроенные окружения до деплоя.
- Миграция конфигурации env_file Docker Compose
- Превратите env_file, который читает ваш стек Compose, в JSON для использования в другом инструменте оркестрации, сервере конфигурации или документации — не раскрывая реальные учётные данные ни одному внешнему сервису.
Технические детали
- Построчный разбор, совместимый с dotenv
- Ввод разбирается строка за строкой. Пустые строки и строки-комментарии (первый непробельный символ #) пропускаются, необязательный префикс export удаляется, а каждая оставшаяся строка разделяется по первому = на ключ и значение. У ключей обрезаются окружающие пробелы. Значения следуют правилам dotenv: двойные кавычки обрабатывают экранирование \n \t \r \\ \" и допускают многострочные диапазоны, одинарные кавычки буквальны, а значения без кавычек удаляют завершающие пробелы и встроенные комментарии.
- Необязательное определение типов
- По умолчанию все значения выводятся как строки JSON, что соответствует поведению dotenv во время выполнения, где значения process.env всегда строки. При включённом «Определять типы» значения без кавычек повышаются: числовые строки становятся числами JSON, true/false становятся логическими значениями, а пустые или null-значения становятся JSON null. Значения в кавычках никогда не приводятся к типу — кавычки помечают их как явные строки. Дублирующиеся ключи разрешаются по правилу «побеждает последний» с предупреждением.
- На стороне браузера — без загрузки, без сервера
- Вся обработка происходит целиком в движке JavaScript вашего браузера; данные .env ни в какой момент не передаются по сети. Внешних зависимостей нет, потому что парсер написан внутри проекта — библиотека Node dotenv опирается на файловую систему и небезопасна для браузера. Ввод размером более 200 КБ переключается из живого режима в ручной (явное нажатие «Преобразовать»), чтобы сохранить отзывчивость браузера.
Лучшие практики
- Оставляйте строковый вывод по умолчанию, чтобы соответствовать dotenv
- dotenv загружает каждое значение как строку, поэтому строковый вывод по умолчанию отражает в точности то, что видит приложение во время выполнения. Включайте «Определять типы» только тогда, когда последующий потребитель действительно ожидает типизированный JSON — иначе вы рискуете несоответствием, при котором '0' или 'false' ведут себя в JSON иначе, чем в работающем приложении.
- Заключайте в кавычки значения, содержащие # или пробелы
- В значениях без кавычек пробел, за которым следует #, начинает встроенный комментарий, а завершающие пробелы обрезаются. Если значение законно содержит # (hex-цвета, URL с фрагментом) или значимые пробелы, заключите его в двойные кавычки, чтобы оно сохранилось в JSON дословно.
- Разрешайте дублирующиеся ключи в источнике
- Инструмент сохраняет последнее значение и предупреждает вас при дублировании ключа, но дубликат в файле .env почти всегда является ошибкой. Уберите лишнюю строку, чтобы не было неоднозначности относительно того, какой секрет активен.
- Никогда не вставляйте продакшен-секреты в серверные конвертеры
- Поскольку файл .env фактически является списком учётных данных, преобразуйте его только в инструменте, который работает целиком в браузере. Этот конвертер именно таков — проверьте отсутствие сетевых запросов в DevTools — поэтому он безопасен для реальных секретов, в отличие от серверных или API-конвертеров.
- Проверяйте JSON перед использованием далее
- После преобразования прогоните JSON через форматировщик JSON, чтобы подтвердить структуру перед передачей в валидатор схемы, импортом в менеджер секретов или загрузчиком конфигурации, чтобы структурный сюрприз всплыл рано.
Часто задаваемые вопросы
Как преобразовать файл .env в JSON онлайн?
Значения преобразуются в числа и логические значения или сохраняются как строки?
Что произойдёт, если один и тот же ключ встречается в файле .env дважды?
Как обрабатываются кавычки, экранирование и многострочные значения?
Согласован ли этот парсер с библиотекой dotenv?
Справится ли он с вложенной или сгруппированной конфигурацией?
Отправляются ли мои данные .env на сервер?
Похожие инструменты
Все инструменты →Base64 декодер и кодировщик
Кодирование и форматирование
Декодирование и кодирование Base64 онлайн бесплатно. Преобразование в реальном времени с полной поддержкой UTF-8 и эмодзи. Полная приватность — работает в браузере. Без регистрации.
Конвертер Base64 в изображение
Кодирование и форматирование
Декодируйте строку Base64 или data URI обратно в изображение прямо в браузере. Предпросмотр, размеры и MIME, затем скачивание как PNG, JPG, GIF, SVG. Без загрузки.
Конвертер CSV в JSON
Кодирование и форматирование
Конвертируйте CSV в JSON в браузере. RFC 4180, определение типов, заголовок, безопасность больших целых. 100% приватно, без загрузки.
Конвертер HTML в Markdown
Кодирование и форматирование
Конвертируйте HTML в чистый Markdown прямо в браузере — GFM-таблицы, списки задач и ссылки. Выбирайте ATX/Setext заголовки и inline или reference ссылки. Удобно для переноса веб-контента и подачи в LLM. 100% приватно.
Конвертер изображений в Base64
Кодирование и форматирование
Кодируйте изображения в data URI Base64 прямо в браузере — PNG, JPG, GIF, WebP, SVG, ICO. Копируйте вывод для HTML, CSS, Markdown и JSON. 100% приватно, без загрузки.
JSON Diff и сравнение
Кодирование и форматирование
Сравнивайте два JSON-файла мгновенно в браузере. Side-by-side подсветка, вывод JSON Patch (RFC 6902), игнорирование шума вроде timestamp и ID. 100% приватно, без загрузки.