JSON から .env への変換ツール
JSON オブジェクトを貼り付けるだけで即座に .env ファイルを生成。設定から dotenv をローカルで生成し、キーやシークレットはブラウザから一切出ません。100% プライベート、アップロード不要。
オプション · キーを保持 · export なし
.env ファイルとは?
.env ファイル(dotenv ファイル)は、環境設定とシークレットをソースコードの外に保持する、KEY=VALUE ペアのプレーンテキストのリストです。Node.js、Vite、Next.js、Python、Ruby、Docker Compose の事実上の標準であり、dotenv ライブラリがファイルを読み込み、各ペアをプロセス環境に注入します。データベースのパスワード、API キー、アクセストークンを保持することが多いため、.env ファイルは機密として扱われ、バージョン管理から除外されます。
JSON から .env ファイルを生成するのは、よくある設定解析タスクの逆です。すでに JSON オブジェクトとして設定がある(API レスポンス、設定エクスポート、シークレットマネージャーのダンプ、設定をプログラム的に組み立てるスクリプトなどから)状態で、プロジェクトに入れたりコンテナに渡したりするための .env ファイルが必要なのです。この変換ツールは JSON オブジェクトのトップレベルキーをたどり、プロパティごとに正しく引用された KEY=VALUE 行を 1 行書きます。
このツールはいくつかの意図的な決定を軸に構築されています。
**1. 往復で安全な引用。** 数値とブール値は裸で書かれ、null は空の値になり、スペース、改行、#、引用符を含むあらゆる文字列は自動的に二重引用符で囲まれてエスケープされます。結果は dotenv とコンパニオンの .env から JSON への変換ツール を通じてきれいに解析し直せるため、値が往復で意味を変えることはありません。
**2. 誠実なネストの扱い。** .env ファイルは定義上フラットです。ネストしたデータを黙って捨てるのではなく、本ツールは各ネストオブジェクトや配列をコンパクトな JSON 文字列にシリアライズし、どのキーがフラット化されたかを警告するため、.env が本当に適切な出力先かを判断できます。
**3. 任意のキー正規化。** 情報を失わないよう、キーはデフォルトでそのまま保持されます。「キーを正規化」をオンにすると camelCase や kebab-case が環境変数で使われる UPPER_SNAKE_CASE 慣例に変換され、それでも有効な名前にならないキーには警告が出ます。
**4. 100% ブラウザベースのプライバシー。** 貼り付ける JSON(通常はこれから .env に書き込もうとしているまさにその認証情報です)がブラウザから出ることはありません。アップロードも、サーバーとの往復も、ログ記録もありません。DevTools のネットワークタブでネットワークリクエストがゼロであることを確認してください。
変換前には、JSON フォーマッター で JSON を検証・整形したり、JSON エスケープ で JSON 文字列をアンエスケープしたりできます。設定を構造で表現する方がよい場合は、JSON から YAML がフラットな .env にはできないネストを保ちます。
// Generate .env lines from a JSON object in Node.js
const config = {
DATABASE_URL: 'postgres://user:pass@localhost:5432/mydb',
PORT: 8080,
DEBUG: true,
NOTE: 'value with spaces',
};
const needsQuotes = (s) => /[\s#"'\n]/.test(s);
const env = Object.entries(config)
.map(([key, value]) => {
if (typeof value === 'string') {
return needsQuotes(value)
? `${key}=${JSON.stringify(value)}`
: `${key}=${value}`;
}
return `${key}=${value ?? ''}`; // null -> empty value
})
.join('\n');
console.log(env);
// DATABASE_URL=postgres://user:pass@localhost:5432/mydb
// PORT=8080
// DEBUG=true
// NOTE="value with spaces" 主な機能
往復で安全な引用
数値とブール値は裸で書かれ、null は空の値になり、スペース、改行、#、引用符を含む文字列は自動的に二重引用符で囲まれてエスケープされるため、dotenv を通じてきれいに解析し直せます。
誠実なネストの扱い
ネストしたオブジェクトや配列はフラットな .env に存在できないため、各々がコンパクトな JSON 文字列にシリアライズされ、どのキーがフラット化されたかを警告が正確に列挙します。黙った変更ではありません。
任意のキー正規化
デフォルトではキーをそのまま保持し(有効な env 名でないキーには警告を出します)、「キーを正規化」をオンにすると camelCase や kebab-case が環境変数で使われる UPPER_SNAKE_CASE 慣例に変換されます。
任意の export プレフィックス
各行の先頭に export を付け、生成された .env ファイルをシェルで直接 source できるようにします。CI やデプロイスクリプトのスタイルに合います。
ライブ変換
JSON の入力や貼り付けに合わせて .env 出力が即座に更新されます。大きな入力(200KB 超)はブラウザの応答性を保つため「変換」ボタン付きの手動モードに切り替わります。
100% ブラウザベースのプライバシー
すべての変換はブラウザ内でローカルに実行されます。貼り付ける JSON(API キー、認証情報、トークン)がアップロードされたり、ログに記録されたり、サーバーに保存されたりすることは一切ありません。
例
設定オブジェクトから .env へ
{
"DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
"PORT": 8080,
"DEBUG": true,
"LOG_LEVEL": "info",
"API_KEY": "sk_live_abc123"
} DATABASE_URL=postgres://user:pass@localhost:5432/mydb PORT=8080 DEBUG=true LOG_LEVEL=info API_KEY=sk_live_abc123
フラットな JSON 設定オブジェクトがきれいな .env ファイルになります。数値とブール値は引用符なしで書かれ、プレーンな文字列はそのまま書かれます。.env として保存して dotenv で読み込む準備が整います。
引用符が必要な値
{
"GREETING": "Hello, World",
"MOTD": "line one\nline two",
"COLOR": "#ff0000",
"NOTE": "value with # hash",
"EMPTY": null
} GREETING="Hello, World" MOTD="line one\nline two" COLOR="#ff0000" NOTE="value with # hash" EMPTY=
スペース、改行、#、引用符を含む文字列は自動的に二重引用符で囲まれてエスケープされ、dotenv を通る往復でも維持されます。null 値は空の代入(KEY=)になります。
キーを UPPER_SNAKE_CASE に正規化
{
"databaseUrl": "postgres://localhost/mydb",
"poolSize": 10,
"enable-signup": true
} DATABASE_URL=postgres://localhost/mydb POOL_SIZE=10 ENABLE_SIGNUP=true
「キーを正規化」オプションをオンにすると、camelCase や kebab-case のキーが環境変数で使われる UPPER_SNAKE_CASE 慣例に変換されます。オフにすると、元のキーがそのまま保持されます。
ネストしたオブジェクトを JSON 文字列にフラット化
{
"APP_NAME": "my-app",
"FEATURES": { "signup": true, "beta": false },
"REGIONS": ["us-east-1", "eu-west-1"]
} APP_NAME=my-app
FEATURES="{\"signup\":true,\"beta\":false}"
REGIONS="[\"us-east-1\",\"eu-west-1\"]" .env ファイルはフラットなので、ネストしたオブジェクトや配列をネイティブに表現できません。本ツールは各ネスト値をコンパクトな JSON 文字列にシリアライズして二重引用符で囲み、どのキーがフラット化されたかを列挙する警告を表示するため、挙動が黙って行われることはありません。
使い方
- 1
JSON オブジェクトを貼り付ける
上の入力欄にフラットな JSON オブジェクトを入力または貼り付けてください。「例を読み込む」をクリックして、設定オブジェクト、引用符が必要な値、ネストしたオブジェクトを試すこともできます。
- 2
ライブの .env 出力を確認
.env ファイルが出力パネルに即座に表示されます。UPPER_SNAKE_CASE の名前にするには「キーを正規化」を、ファイルをシェルで source する場合は「export プレフィックスを追加」を切り替えてください。
- 3
コピーまたはダウンロード
「コピー」で .env をクリップボードに取得するか、「ダウンロード」で .env ファイルとして保存してください。プロジェクトにそのまま入れて dotenv で読み込む準備が整います。
よくある JSON の落とし穴
トップレベルの配列またはスカラー
.env ファイルは名前付き変数のフラットな集合なので、入力は JSON オブジェクトでなければなりません。トップレベルの配列や、文字列・数値のような裸の値には変数にマッピングするキー名がなく、本ツールはエラーを報告します。まずデータを説明的なキーを持つオブジェクトで包んでください。
["a", "b", "c"]
{"ITEMS": "a,b,c"} 無効な JSON 構文
入力は有効な JSON でなければなりません。末尾のカンマ、単一引用符、引用符なしのキーは JavaScript からコピーされたよくある間違いで、行番号と列番号付きの解析エラーを引き起こします。すべてのキーと文字列値に二重引用符を使い、末尾のカンマを取り除いてください。
{'PORT': 8080,} {"PORT": 8080} .env でネスト構造を期待する
ネストしたオブジェクトや配列はフラットな .env ファイルにネイティブに表現できません。本ツールはそれらを JSON 文字列にシリアライズして警告しますが、値は単一の不透明な文字列になります。構造を保ちたい場合は、.env ではなく YAML に変換してください。
{"DB": {"host": "localhost", "port": 5432}} {"DB_HOST": "localhost", "DB_PORT": 5432} 有効な変数名でないキー
ほとんどのシェルやローダーは [A-Za-z_][A-Za-z0-9_]* に一致する変数名のみ受け付けます。数字で始まる、またはスペースやダッシュを含むキーは無効です。キーをそのまま保つと、本ツールはそのようなキーについて警告します。「キーを正規化」は大文字小文字とダッシュを修正しますが、数字で始まる名前は救済できないので、それらのキーは JSON 内でリネームしてください。
{"2fa-enabled": true} {"TWO_FA_ENABLED": true} 引用が必要な引用符なしの文字列
JSON を手書きする場合、スペースや # を含む値もやはり有効な JSON 文字列(二重引用符内)でなければならないことを忘れないでください。本ツールはそれを .env 用に自動的に再引用します。間違いは入力側で JSON の引用符を忘れることで、無効な JSON を生んでしまいます。
{"MSG": Hello World} {"MSG": "Hello World"} よくある使用例
- 設定エクスポートから .env を生成
- API、設定ダッシュボード、シークレットマネージャーからの JSON 設定エクスポートを、ローカル開発やコンテナですぐ使える .env ファイルに変えます。
- .env テンプレートの雛形を作成
- 新しいサービスが必要とする変数を記述する JSON オブジェクトを作り、.env に変換し、.env.example をコミットすれば、チームメンバーはどのキーを埋めるべきか正確に分かります。
- JSON 設定のツールを dotenv に橋渡し
- 一部のツールは設定を JSON で出力しますが、実行環境は .env を期待します。JSON 出力を dotenv 形式に変換し、パイプラインの両側が同じ変数で一致するようにします。
- source 可能なシェル env ファイルを生成
- export プレフィックスを有効にして、シェルや CI ステップで直接 source できるファイルを生成し、JSON 設定ブロブを 1 回の貼り付けでエクスポートされた環境変数に変えます。
- 設定を往復させる
- これを .env から JSON への変換ツールと組み合わせ、設定を構造化された JSON として編集してから .env に書き戻します。往復で安全な引用により、値が両方向で維持されることが保証されます。
- 大文字小文字の混在したキーを正規化
- 「キーを正規化」オプションで、camelCase や kebab-case のキーを持つ JSON オブジェクトを、環境変数の慣例に合った一貫した UPPER_SNAKE_CASE 変数名の .env に変換します。
技術的な詳細
- オブジェクト専用の入力と型付きシリアライズ
- 入力はブラウザのネイティブな JSON.parse() で解析され、トップレベルのオブジェクトでなければなりません。配列やスカラーは明確なエラーで拒否されます。各トップレベルのプロパティは型ごとにシリアライズされます。数値とブール値は裸で書かれ、null は空の値(KEY=)になり、文字列はスペース、改行、#、引用符を含む場合を除いてそのまま書かれます。その場合は往復の安全のため二重引用符で囲まれてエスケープされます。
- ネスト値とキーの正規化
- ネストしたオブジェクトや配列はコンパクトな JSON.stringify でシリアライズされ、二重引用符で囲まれてエスケープされ、フラット化されたキーを名指しする警告が出ます。任意の「キーを正規化」ステップはキーを UPPER_SNAKE_CASE に変換し、ほとんどの無効な名前を解決します。キーをそのまま保つ場合、[A-Za-z_][A-Za-z0-9_]* に一致しないキーは無効名の警告をトリガーします。任意の export プレフィックスを各行に追加できます。
- ブラウザベース — アップロードもサーバーもなし
- すべての処理はブラウザの JavaScript エンジン内のみで行われ、JSON データがネットワークを介して送信されることはありません。Node の dotenv ライブラリはブラウザでは安全に動かないため、シリアライザーは外部依存なしで自前で書かれています。200KB を超える入力は、ブラウザの応答性を保つためライブモードから手動モード(明示的な「変換」クリック)に切り替わります。
ベストプラクティス
- env 慣例が必要でない限りキーはそのまま保つ
- 消費するアプリがすでに JSON 内の正確なキー名を期待している場合は「キーを正規化」をオフのままにし、何も予期せずリネームされないようにしてください。環境変数が慣例的に使う UPPER_SNAKE_CASE を特に望むときだけオンにしてください。
- ネストは偶然ではなく意図的にフラット化する
- ネスト値は .env 内で不透明な JSON 文字列になり、ほとんどのアプリは自動的に解析し直せません。フラット化の警告を見たら、変換前に JSON をフラットでプレフィックス付きのキー(DB_HOST、DB_PORT)に再構成するか、YAML のような構造化形式を選ぶことをおすすめします。
- 往復のために自動引用を信頼する
- いつ引用するかはツールに任せてください。必要な値だけを二重引用符で囲んでエスケープします。これにより .env を読みやすく保ちつつ、スペース、改行、# を含む値が .env から JSON への変換ツールを通じた往復で変わらず維持されることを保証します。
- シークレットはブラウザ専用ツールでのみ生成する
- ここで変換する JSON は事実上認証情報の集合です。完全にブラウザ内で動作するツールでのみ .env を生成してください。DevTools でネットワークリクエストがゼロであることを確認してください。本変換ツールはこれに該当し、サーバー側や API ベースのジェネレーターとは違います。
- まず JSON 入力を検証する
- JSON が手書きやスクリプトで組み立てられている場合は、まず JSON フォーマッター で検証して末尾のカンマや引用符なしのキーを捕捉してください。そうすれば分かりにくい解析エラーではなく、きれいな .env が得られます。
よくある質問
JSON を .env ファイルにオンラインで変換するには?
どんな JSON を受け付けますか?
文字列、数値、ブール値、null はどのように書かれますか?
ネストしたオブジェクトや配列はどうなりますか?
「キーを正規化」オプションは何をしますか?
私の JSON データはサーバーに送信されますか?
関連ツール
すべてのツールを見る →Base64エンコーダー&デコーダー
エンコーディングとフォーマット
Base64のデコード・エンコードが無料でオンラインで行えます。リアルタイム変換、UTF-8・絵文字対応。100%ブラウザ上で動作しデータは外部に送信されません。登録不要。
Base64 画像変換ツール
エンコーディングとフォーマット
Base64 文字列やデータURIをブラウザ上で画像に戻します。プレビューし、寸法と MIME を確認して、PNG・JPG・GIF・SVG としてダウンロード。アップロード不要。
CSV to JSON 変換ツール
エンコーディングとフォーマット
CSVをブラウザ内で即座にJSONに変換。RFC 4180・型推論・ヘッダー行・大整数安全対応。100%プライベート、アップロード不要。
.env から JSON への変換ツール
エンコーディングとフォーマット
.env ファイルを貼り付けるだけで即座に JSON に変換。データベースのパスワードや API キー、トークンはブラウザから一切出ません。100% プライベート、アップロード不要、無料の dotenv パーサー。
HTML Markdown 変換ツール
エンコーディングとフォーマット
HTML をブラウザ内できれいな Markdown に変換 — GFM のテーブル、タスクリスト、リンク対応。ATX/Setext 見出しとインラインまたは参照リンクを選択。Web コンテンツの移行や LLM への投入に最適。完全プライベートでアップロード不要。
画像 Base64 変換ツール
エンコーディングとフォーマット
画像を Base64 データURIに変換 — PNG・JPG・GIF・WebP・SVG・ICO 対応。HTML・CSS・Markdown・JSON 形式で出力&コピー。完全プライベートでアップロード不要。