Skip to content

JSON'dan .env'e Dönüştürücü

Bir JSON nesnesi yapıştırın, anında .env dosyası alın. dotenv'i yerel üretin — anahtarlarınız ve sırlarınız tarayıcınızdan asla çıkmaz. %100 gizli, yükleme yok.

Takip Yok Tarayıcıda Çalışır Ücretsiz
Seçenekler · anahtarları koru · export yok
0 karakter
.env Çıktı
0 satır
Yalnızca nesne girişi işleme, gidiş-dönüş güvenli tırnaklama, iç içe değer düzleştirme ve anahtar normalleştirme açısından gözden geçirildi — Go Tools Mühendislik Ekibi · Jun 12, 2026

.env Dosyası Nedir?

Bir .env dosyası (dotenv dosyası), ortam yapılandırmasını ve sırları kaynak kodunuzun dışında tutan, KEY=VALUE çiftlerinden oluşan düz metin bir listedir. Node.js, Vite, Next.js, Python, Ruby ve Docker Compose için fiili standarttır — dotenv kütüphanesi dosyayı yükler ve her çifti süreç ortamına enjekte eder. Genellikle veritabanı parolaları, API anahtarları ve erişim token'ları sakladığından, bir .env dosyası hassas olarak ele alınır ve sürüm denetiminin dışında tutulur.

JSON'dan bir .env dosyası üretmek, yaygın yapılandırma-ayrıştırma işinin tersidir: yapılandırmayı zaten bir JSON nesnesi olarak elinizde tutuyorsunuz — bir API yanıtından, bir yapılandırma dışa aktarımından, bir sır yöneticisi dökümünden veya ayarları programlı olarak oluşturan bir betikten — ve bir projeye bırakacağınız ya da bir konteynere vereceğiniz bir .env dosyasına ihtiyacınız var. Bu dönüştürücü, JSON nesnenizin üst düzey anahtarlarını dolaşır ve özellik başına doğru tırnaklanmış bir KEY=VALUE satırı yazar.

Bu araç birkaç kasıtlı karar etrafında kurulmuştur:

**1. Gidiş-dönüş güvenli tırnaklama.** Sayılar ve boole değerleri çıplak yazılır, null boş bir değer olur ve boşluk, satır sonu, # veya tırnak içeren herhangi bir dize otomatik olarak çift tırnaklanır ve kaçış işlenir. Sonuç, dotenv üzerinden ve eşlik eden .env'den JSON'a Dönüştürücü üzerinden temiz bir şekilde geri ayrıştırılır, böylece bir değer gidiş-dönüşte anlamını asla değiştirmez.

**2. İç içe geçmenin dürüst işlenmesi.** Bir .env dosyası tanımı gereği düzdür. İç içe verileri sessizce düşürmek yerine, araç her iç içe nesneyi veya diziyi kompakt bir JSON dizesine serileştirir ve hangi anahtarların düzleştirildiği konusunda sizi uyarır, böylece .env'in gerçekten doğru hedef olup olmadığına karar verebilirsiniz.

**3. İsteğe bağlı anahtar normalleştirme.** Bilgi kaybetmemek için anahtarlar varsayılan olarak birebir tutulur. camelCase veya kebab-case'i ortam değişkenlerinin kullandığı UPPER_SNAKE_CASE kuralına dönüştürmek için Anahtarları normalleştir seçeneğini açın; hâlâ geçerli bir ad oluşturamayan herhangi bir anahtar için bir uyarı ile.

**4. %100 tarayıcı tabanlı gizlilik.** Yapıştırdığınız JSON — genellikle tam da bir .env'e yazmak üzere olduğunuz kimlik bilgileri — tarayıcıdan asla çıkmaz. Yükleme, sunucu gidiş-dönüşü, günlük kaydı yok; DevTools Ağ sekmesinde sıfır ağ isteği doğrulayın.

Dönüştürmeden önce, JSON'u JSON Biçimlendirici ile doğrulayabilir veya düzgün biçimlendirebilir ya da bir JSON dizesinin kaçışını JSON Kaçış ile kaldırabilirsiniz. Yapılandırmanız yapıyla daha iyi ifade ediliyorsa, JSON'dan YAML'ye düz bir .env'in koruyamadığı iç içe geçmeyi korur.

// 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"

Temel Özellikler

Gidiş-Dönüş Güvenli Tırnaklama

Sayılar ve boole değerleri çıplak yazılır, null boş bir değer olur ve boşluk, satır sonu, # veya tırnak içeren dizeler, dotenv üzerinden temiz bir şekilde geri ayrıştırılmaları için otomatik olarak çift tırnaklanır ve kaçış işlenir.

Dürüst İç İçe Geçme İşleme

İç içe nesneler ve diziler düz bir .env'de var olamaz, bu nedenle her biri kompakt bir JSON dizesine serileştirilir ve bir uyarı tam olarak hangi anahtarların düzleştirildiğini listeler — asla sessiz bir değişiklik değil.

İsteğe Bağlı Anahtar Normalleştirme

Anahtarları varsayılan olarak birebir tutun — geçerli bir env adı olmayan herhangi bir anahtar için bir uyarı ile — ya da camelCase ve kebab-case'i ortam değişkenlerinin kullandığı UPPER_SNAKE_CASE kuralına dönüştürmek için Anahtarları normalleştir seçeneğini açın.

İsteğe Bağlı export Ön Eki

Üretilen .env dosyasının bir kabukta doğrudan source edilebilmesi için her satırın başına export ekleyin; CI ve dağıtım betiklerinin stiliyle eşleşir.

Canlı Dönüştürme

.env çıktısı, siz JSON yazarken veya yapıştırırken anında güncellenir. Büyük girişler (200 KB üzeri), tarayıcıyı yanıt verir durumda tutmak için Dönüştür düğmesiyle manuel moda geçer.

%100 Tarayıcı Tabanlı Gizlilik

Tüm dönüştürme tarayıcınızda yerel olarak çalışır. Yapıştırdığınız JSON — API anahtarları, kimlik bilgileri, token'lar — asla yüklenmez, asla günlüğe kaydedilmez ve hiçbir sunucuda saklanmaz.

Örnekler

Yapılandırma nesnesinden .env'e

{
  "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

Düz bir JSON yapılandırma nesnesi temiz bir .env dosyası olur. Sayılar ve boole değerleri tırnaksız yazılır; düz dizeler olduğu gibi yazılır. .env olarak kaydedip dotenv ile yüklemeye hazır.

Tırnak gerektiren değerler

{
  "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=

Boşluk, satır sonu, # veya tırnak içeren dizeler, dotenv üzerinden gidiş-dönüşten sağ çıkmaları için otomatik olarak çift tırnak içine alınır ve kaçış işlenir. null bir değer boş bir atama olur (KEY=).

Anahtarları UPPER_SNAKE_CASE'e normalleştir

{
  "databaseUrl": "postgres://localhost/mydb",
  "poolSize": 10,
  "enable-signup": true
}
DATABASE_URL=postgres://localhost/mydb
POOL_SIZE=10
ENABLE_SIGNUP=true

Anahtarları normalleştir seçeneği açıkken, camelCase ve kebab-case anahtarlar, ortam değişkenlerinin kullandığı UPPER_SNAKE_CASE kuralına dönüştürülür. Kapalıyken, orijinal anahtarlar birebir tutulur.

İç içe nesne bir JSON dizesine düzleştirildi

{
  "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 dosyaları düzdür, bu nedenle iç içe nesneler ve diziler doğal olarak gösterilemez. Araç her iç içe değeri kompakt bir JSON dizesine serileştirir ve onu çift tırnak içine alır ve davranışın asla sessiz olmaması için hangi anahtarların düzleştirildiğini listeleyen bir uyarı gösterir.

Nasıl Kullanılır

  1. 1

    JSON Nesnenizi Yapıştırın

    Yukarıdaki giriş alanına düz bir JSON nesnesi girin veya yapıştırın. Ayrıca bir yapılandırma nesnesi, tırnak gerektiren değerler veya iç içe bir nesne denemek için 'Örnek yükle'ye tıklayabilirsiniz.

  2. 2

    Canlı .env Çıktısını Görün

    .env dosyası çıkış panelinde anında belirir. UPPER_SNAKE_CASE adları için 'Anahtarları normalleştir' seçeneğini veya dosya bir kabukta source edilecekse 'export ön eki ekle' seçeneğini açın.

  3. 3

    Kopyalayın veya İndirin

    .env'i panonuza almak için Kopyala'ya veya .env dosyası olarak kaydetmek için İndir'e tıklayın — projenize bırakıp dotenv ile yüklemeye hazırdır.

Yaygın JSON Tuzakları

Üst Düzey Dizi veya Skaler

Bir .env dosyası düz bir adlandırılmış değişkenler kümesidir, bu nedenle giriş bir JSON nesnesi olmalıdır. Üst düzey bir dizi veya dize ya da sayı gibi çıplak bir değer, değişkenlere eşlenecek anahtar adlarına sahip değildir ve araç bir hata bildirir. Önce verilerinizi açıklayıcı anahtarları olan bir nesneye sarın.

✗ Yanlış
["a", "b", "c"]
✓ Doğru
{"ITEMS": "a,b,c"}

Geçersiz JSON Sözdizimi

Giriş geçerli JSON olmalıdır. Sondaki virgüller, tek tırnaklar ve tırnaksız anahtarlar, JavaScript'ten kopyalanan yaygın hatalardır ve satır ve sütunla bir ayrıştırma hatasına neden olur. Tüm anahtarlar ve dize değerleri için çift tırnak kullanın ve sondaki virgülleri kaldırın.

✗ Yanlış
{'PORT': 8080,}
✓ Doğru
{"PORT": 8080}

.env'de İç İçe Yapı Beklemek

İç içe nesneler ve diziler düz bir .env dosyasında doğal olarak gösterilemez. Araç bunları JSON dizelerine serileştirir ve sizi uyarır, ancak değer tek bir opak dize olur. Yapının korunmasına ihtiyacınız varsa, .env yerine YAML'ye dönüştürün.

✗ Yanlış
{"DB": {"host": "localhost", "port": 5432}}
✓ Doğru
{"DB_HOST": "localhost", "DB_PORT": 5432}

Geçerli Değişken Adı Olmayan Anahtarlar

Çoğu kabuk ve yükleyici yalnızca [A-Za-z_][A-Za-z0-9_]* ile eşleşen değişken adlarını kabul eder — bir rakamla başlayan ya da boşluk veya tire içeren bir anahtar geçersizdir. Anahtarlar birebir tutulduğunda araç sizi bu tür anahtarlar hakkında uyarır; Anahtarları normalleştir, büyük/küçük harf ve tireleri düzeltir ancak bir rakamla başlayan bir adı kurtaramaz, bu yüzden bu anahtarları JSON'unuzda yeniden adlandırın.

✗ Yanlış
{"2fa-enabled": true}
✓ Doğru
{"TWO_FA_ENABLED": true}

Tırnak Gerektiren Tırnaksız Dizeler

JSON'u elle yazıyorsanız, boşluk veya # içeren bir değerin yine de geçerli bir JSON dizesi (çift tırnak içinde) olması gerektiğini unutmayın. Araç onu daha sonra .env için otomatik olarak yeniden tırnaklar. Hata, giriş tarafında JSON tırnaklarını unutmaktır ki bu geçersiz JSON üretir.

✗ Yanlış
{"MSG": Hello World}
✓ Doğru
{"MSG": "Hello World"}

Yaygın Kullanım Alanları

Bir Yapılandırma Dışa Aktarımından .env Üretin
Bir API'den, bir ayarlar panosundan veya bir sır yöneticisinden gelen bir JSON yapılandırma dışa aktarımını alın ve onu yerel geliştirme ya da bir konteyner için kullanıma hazır bir .env dosyasına çevirin.
.env Şablonları İskelesi Kurun
Yeni bir hizmetin ihtiyaç duyduğu değişkenleri tanımlayan bir JSON nesnesi oluşturun, onu bir .env'e dönüştürün ve takım arkadaşlarınızın hangi anahtarları dolduracağını tam olarak bilmesi için bir .env.example işleyin.
JSON Yapılandırmalı Araçları dotenv'e Köprüleyin
Bazı araçlar yapılandırmayı JSON olarak yayarken çalışma zamanınız bir .env bekler. JSON çıktısını dotenv biçimine dönüştürün, böylece işlem hattının her iki yarısı da aynı değişkenler üzerinde uzlaşır.
Source Edilebilir Kabuk env Dosyaları Üretin
Bir kabukta veya CI adımında doğrudan source edebileceğiniz bir dosya üretmek için export ön ekini etkinleştirin; bir JSON yapılandırma bloğunu tek bir yapıştırmada dışa aktarılmış ortam değişkenlerine çevirin.
Yapılandırmayı Gidiş-Dönüş Yapın
Yapılandırmayı yapılandırılmış JSON olarak düzenlemek ve onu .env'e geri yazmak için bunu .env'den JSON'a Dönüştürücü ile eşleştirin — gidiş-dönüş güvenli tırnaklama, değerlerin her iki yönde de sağ çıkmasını garanti eder.
Karışık Harfli Anahtarları Normalleştirin
Anahtarları normalleştir seçeneğini kullanarak camelCase veya kebab-case anahtarlara sahip bir JSON nesnesini, ortam değişkeni kurallarıyla eşleşen tutarlı UPPER_SNAKE_CASE değişken adlarına sahip bir .env'e dönüştürün.

Teknik Ayrıntılar

Tip Bazlı Serileştirme ile Yalnızca Nesne Girişi
Giriş, tarayıcının yerel JSON.parse() ile ayrıştırılır ve üst düzey bir nesne olmalıdır; diziler ve skalerler net bir hatayla reddedilir. Her üst düzey özellik türe göre serileştirilir: sayılar ve boole değerleri çıplak yazılır, null boş bir değer olur (KEY=) ve dizeler, bir boşluk, satır sonu, # veya tırnak içermedikleri sürece doğrudan yazılır; içeriyorlarsa gidiş-dönüş güvenliği için çift tırnaklanır ve kaçış işlenir.
İç İçe Değerler ve Anahtar Normalleştirme
İç içe nesneler ve diziler kompakt bir JSON.stringify ile serileştirilir, çift tırnaklanır ve kaçış işlenir; düzleştirilen anahtarları adlandıran bir uyarı ile. İsteğe bağlı Anahtarları normalleştir adımı, anahtarları UPPER_SNAKE_CASE'e dönüştürerek çoğu geçersiz adı çözer; anahtarlar birebir tutulduğunda, [A-Za-z_][A-Za-z0-9_]* ile eşleşmeyen herhangi bir anahtar geçersiz-ad uyarısını tetikler. Her satıra isteğe bağlı bir export ön eki eklenebilir.
Tarayıcı Tabanlı — Yükleme Yok, Sunucu Yok
Tüm işleme tamamen tarayıcınızın JavaScript motorunda gerçekleşir; hiçbir noktada hiçbir JSON verisi ağ üzerinden iletilmez. Node dotenv kütüphanesi tarayıcı için güvenli olmadığından, serileştirici harici bağımlılık olmadan şirket içinde yazılmıştır. 200 KB'den büyük girişler, tarayıcıyı yanıt verir durumda tutmak için canlı moddan manuel moda (açık bir Dönüştür tıklaması) geçer.

En İyi Uygulamalar

env Kurallarına İhtiyacınız Yoksa Anahtarları Birebir Koruyun
Tüketen uygulama, JSON'unuzdaki tam anahtar adlarını zaten bekliyorsa, hiçbir şeyin beklenmedik şekilde yeniden adlandırılmaması için Anahtarları normalleştir seçeneğini kapalı bırakın. Yalnızca özellikle ortam değişkenlerinin geleneksel olarak kullandığı UPPER_SNAKE_CASE kuralını istediğinizde açın.
İç İçe Geçmeyi Kazara Değil, Bilinçli Düzleştirin
İç içe bir değer, .env'de çoğu uygulamanın otomatik olarak geri ayrıştıramayacağı opak bir JSON dizesi olur. Düzleştirme uyarısını gördüğünüzde, dönüştürmeden önce JSON'u düz, ön ekli anahtarlara (DB_HOST, DB_PORT) yeniden şekillendirmeyi tercih edin veya YAML gibi yapılandırılmış bir biçim seçin.
Gidiş-Dönüşler İçin Otomatik Tırnaklamaya Güvenin
Tırnaklamaya ne zaman gerek olduğuna aracın karar vermesine izin verin — yalnızca buna ihtiyaç duyan değerleri çift tırnaklar ve kaçış işler. Bu, .env'i okunabilir tutarken boşluk, satır sonu veya # içeren değerlerin .env'den JSON'a Dönüştürücü üzerinden geri bir gidiş-dönüşten değişmeden sağ çıkmasını garanti eder.
Sırları Yalnızca Tarayıcı İçi Bir Araçta Üretin
Burada dönüştürdüğünüz JSON fiilen bir kimlik bilgileri kümesidir. Bir .env'i yalnızca tamamen tarayıcıda çalışan bir araçta üretin; DevTools'ta sıfır ağ isteği doğrulayın. Bu dönüştürücü, sunucu tarafı veya API destekli üreteçlerin aksine bu koşulu sağlar.
Önce JSON Girişini Doğrulayın
JSON elle yazıldıysa veya bir betikle bir araya getirildiyse, kafa karıştırıcı bir ayrıştırma hatası yerine temiz bir .env almanız için, sondaki virgülleri veya tırnaksız anahtarları yakalamak üzere önce onu JSON Biçimlendirici ile doğrulayın.

Sıkça Sorulan Sorular

JSON'u çevrimiçi olarak bir .env dosyasına nasıl dönüştürürüm?
Yukarıdaki giriş alanına bir JSON nesnesi yapıştırın. Araç onu tarayıcınızda anında bir .env dosyası olarak üretir — düğmeye tıklamaya gerek yoktur. Her üst düzey özellik bir KEY=VALUE satırı olur. İsteğe bağlı olarak Seçenekler panelinden anahtarları UPPER_SNAKE_CASE'e normalleştirebilir veya bir export ön eki ekleyebilir, ardından sonucu almak için Kopyala'ya veya .env dosyası olarak kaydetmek için İndir'e tıklayabilirsiniz. Her şey yerel olarak çalışır, bu yüzden sırlarınız cihazınızdan asla çıkmaz.
Bu ne tür bir JSON kabul eder?
Giriş bir JSON nesnesi olmalıdır (üst düzeyde bir anahtar/değer çiftleri kümesi), çünkü bir .env dosyası temelde düz bir değişkenler listesidir. Üst düzey bir dizi veya dize ya da sayı gibi çıplak bir skaler, ortam değişkenlerine eşlenemez, bu nedenle araç bir nesne isteyen bir hata bildirir. Geçersiz JSON da, sorunu hızlıca bulabilmeniz için en iyi çaba satır ve sütun numaralarıyla bir hata üretir.
Dizeler, sayılar, boole değerleri ve null nasıl yazılır?
Sayılar ve boole değerleri tırnaksız yazılır (PORT=8080, DEBUG=true). null bir değer, dotenv'in boş bir dize olarak yüklediği boş bir atama olur (KEY=). Düz dizeler olduğu gibi yazılır, ancak boşluk, satır sonu, # veya tırnak karakteri içeren bir dize, geri doğru düzgün ayrıştırılması için otomatik olarak çift tırnak içine alınır ve kaçış işlenir. Bu, çıktının dotenv ayrıştırıcı üzerinden ve eşlik eden .env'den JSON'a Dönüştürücü üzerinden temiz bir şekilde gidiş-dönüş yaptığı anlamına gelir.
İç içe nesnelere ve dizilere ne olur?
.env dosyaları iç içe geçmeyi temsil edemez — her değişken düz bir dizedir. Bir değer iç içe bir nesne veya dizi olduğunda, araç onu JSON.stringify ile kompakt bir JSON dizesine serileştirir, çift tırnak içine alır ve kaçış işler. Engelleyici olmayan bir uyarı, tam olarak hangi anahtarların bu şekilde düzleştirildiğini listeler, böylece yapının daraltıldığını her zaman bilirsiniz. Verileriniz derin bir şekilde iç içeyse, JSON'dan YAML'ye gibi bir biçim hiyerarşiyi .env'in yapabileceğinden çok daha iyi korur.
Anahtarları normalleştir seçeneği ne yapar?
Varsayılan olarak orijinal JSON anahtarları tam olarak yazıldığı gibi tutulur, böylece hiçbir veri kaybolmaz — ve bu modda, henüz geçerli bir ortam değişkeni adı olmayan herhangi bir anahtar (çoğu kabuk ve yükleyici yalnızca [A-Za-z_][A-Za-z0-9_]* ile eşleşen adları kabul eder) yeniden adlandırabilmeniz için bir uyarıyla işaretlenir. Anahtarları normalleştir etkinleştirildiğinde, anahtarlar UPPER_SNAKE_CASE'e dönüştürülür — ortam değişkenleri için geleneksel stil (databaseUrl, DATABASE_URL olur; enable-signup, ENABLE_SIGNUP olur) — bu da çoğu geçersiz adı otomatik olarak çözer.
JSON verilerim bir sunucuya gönderiliyor mu?
Hayır. Tüm dönüştürme tamamen tarayıcınızda JavaScript ile gerçekleşir. Yapıştırdığınız JSON — genellikle bir .env dosyasına yazmak üzere olduğunuz API anahtarlarını, veritabanı kimlik bilgilerini ve token'ları tutar — asla iletilmez, hiçbir sunucuda saklanmaz ve asla günlüğe kaydedilmez. Bunu, tarayıcınızın Ağ sekmesini açıp yapıştırmanın sıfır istek tetiklediğini izleyerek doğrulayabilirsiniz. Yalnızca bir örneği değil, gerçek bir üretim .env dosyasını üretmeyi güvenli kılan budur.