Skip to content

Конвертер .env в JSON

Вставьте файл .env — получите JSON мгновенно. Пароли БД, API-ключи и токены не покидают браузер: 100% приватно, без загрузки, парсер dotenv.

Без отслеживания Работает в браузере Бесплатно
Настройки · 2 пробела · строки
Отступ
0 симв.
JSON Вывод
0 строк
Проверено на совместимость разбора dotenv, обработку кавычек и экранирования и поведение при дублирующихся ключах — Go Tools Engineering Team · Jun 12, 2026

Что такое файл .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. 1

    Вставьте ваш файл .env

    Введите или вставьте содержимое .env в поле ввода выше. Можно также нажать «Загрузить пример», чтобы попробовать .env для Node/Vite, env-файл Docker Compose или шаблон CI-секретов.

  2. 2

    Смотрите живой вывод JSON

    JSON появляется мгновенно в панели вывода. Включите «Определять типы», если хотите числа и логические значения вместо строк, и выберите отступ в 2 или 4 пробела.

  3. 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 в поле ввода выше. Инструмент мгновенно разбирает его в JSON прямо в браузере — нажимать кнопку не нужно. Каждая строка KEY=VALUE становится свойством JSON. В панели «Настройки» можно выбрать отступ в 2 или 4 пробела, затем нажать «Копировать», чтобы взять JSON, или «Скачать», чтобы сохранить его как файл .json. Всё работает локально, поэтому ваши секреты никогда не покидают устройство.
Значения преобразуются в числа и логические значения или сохраняются как строки?
По умолчанию каждое значение сохраняется как строка, точно следуя стандарту dotenv. Сам dotenv никогда не приводит типы — значения process.env всегда строки, — поэтому это поведение по умолчанию сохраняет JSON точным к тому, что приложение реально видит во время выполнения. Если вам нужен типизированный JSON, включите опцию «Определять типы». При её включении значения без кавычек, похожие на числа, становятся числами JSON, true и false становятся логическими значениями, а пустое или null-значение становится JSON null. Значения в кавычках всегда остаются строками даже при включённой опции «Определять типы», поскольку кавычки означают явную строку.
Что произойдёт, если один и тот же ключ встречается в файле .env дважды?
Следуя поведению dotenv, побеждает последнее вхождение — более позднее значение перезаписывает более раннее. Поскольку молчаливо потерянное значение — частая причина ошибок конфигурации, инструмент также показывает неблокирующее предупреждение со списком тех ключей, что дублировались, чтобы вы могли убедиться, какое значение попало в JSON. На выходе по-прежнему получается корректный объект JSON с одной записью на ключ.
Как обрабатываются кавычки, экранирование и многострочные значения?
Значения в двойных кавычках обрабатывают экранирующие последовательности: \n становится переводом строки, \t — табуляцией, \r — возвратом каретки, \\ — обратной косой чертой, а \" — буквальной двойной кавычкой. Значение в двойных кавычках также может занимать несколько строк до закрывающей кавычки — удобно для приватных PEM-ключей и сертификатов. Значения в одинарных кавычках трактуются буквально, без обработки экранирования, как в shell. Значения без кавычек продолжаются до конца строки, при этом завершающие пробелы удаляются, а встроенные комментарии вырезаются (комментарий начинается с пробела, за которым следует #). Это совпадает с тем, как библиотека dotenv разбирает файлы.
Согласован ли этот парсер с библиотекой dotenv?
Да. Правила разбора следуют широко используемым соглашениям dotenv: строки-комментарии с # и пустые строки игнорируются, необязательный префикс export удаляется, ключи разделяются по первому знаку =, одинарные кавычки буквальны, двойные кавычки обрабатывают экранирование и допускают многострочные значения, значения без кавычек удаляют окружающие и завершающие пробелы, а все значения по умолчанию являются строками. Необязательный переключатель «Определять типы» — это дополнительное удобство поверх; он выключен по умолчанию как раз для того, чтобы вывод совпадал с тем, что загрузил бы dotenv.
Справится ли он с вложенной или сгруппированной конфигурацией?
Файлы .env намеренно плоские — это список пар ключ/значение без вложенности. Этот конвертер создаёт один плоский объект JSON, который один к одному отражает эту структуру. Если ваше приложение читает сгруппированную конфигурацию (например, DB_HOST и DB_PORT), ключи останутся плоскими в JSON; вы можете переформировать их в коде позже. Если вам нужны настоящие вложенные структуры, лучше подойдёт формат вроде YAML в JSON, а результат можно красиво отформатировать с помощью форматировщика JSON.
Отправляются ли мои данные .env на сервер?
Нет. Весь разбор происходит целиком в вашем браузере на JavaScript. Содержимое вашего .env — в котором обычно хранятся пароли БД, API-ключи, секреты OAuth и токены доступа — никогда не передаётся, никогда не хранится ни на каком сервере и никогда не логируется. Вы можете убедиться в этом, открыв вкладку «Сеть» в браузере и увидев, что вставка файла не вызывает ни одного запроса. Именно это делает безопасным преобразование реального продакшен-.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% приватно, без загрузки.