تحويل ملف .env إلى JSON

الصق ملف .env لتحصل على كائن JSON بالمتغيرات وقيمها، مفيد للتوثيق أو لنقل الإعدادات إلى خدمة سحابية.

جارٍ تحميل الأداة…

المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.

طريقة الاستخدام

  1. أدخل نص ملف .env، تحويل الأرقام و true/false إلى أنواعها والمسافة البادئة.
  2. تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
  3. انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.

طريقة الحساب

يتجاهل السطور الفارغة والتي تبدأ بالرمز #، ويقرأ كل سطر بصيغة NAME=value مع export اختيارية. القيمة غير المقتبسة تقص مسافاتها، ويبدأ التعليق فيها عند # تسبقها مسافة. داخل العلامات المزدوجة تفك \n و\t و\" و\\، والعلامات المفردة تؤخذ حرفيا. إذا تكرر الاسم تعتمد آخر قيمة.

مثال

المدخلات: تحويل الأرقام و true/false إلى أنواعها = لا، المسافة البادئة = مسافتان. النتيجة: JSON: { "APP_NAME": "ToolSahla", "APP_ENV": "production", "PORT": "3000", "DEBUG": "false", "DATABASE_URL": "postgres://user:pass@localhost:5432/app", "GREETING": "أهلا وسهلا" }، عدد المتغيرات: 6، متغيرات مكررة: لا يوجد.

# Application
APP_NAME="ToolSahla"
APP_ENV=production
PORT=3000
DEBUG=false
DATABASE_URL=postgres://user:pass@localhost:5432/app
GREETING='أهلا وسهلا'
{
  "APP_NAME": "ToolSahla",
  "APP_ENV": "production",
  "PORT": "3000",
  "DEBUG": "false",
  "DATABASE_URL": "postgres://user:pass@localhost:5432/app",
  "GREETING": "أهلا وسهلا"
}

الحدود والملاحظات

  • لا يستبدل المراجع مثل ${VAR} بقيمها، بل يبقيها نصا.
  • قواعد ملفات .env تختلف قليلا بين الأدوات، والأداة تتبع سلوك Docker Compose في التعليقات.

أسئلة شائعة عن هذه الأداة

لماذا بقيت القيمة #fff كاملة؟

لأن # لا تبدأ تعليقا إلا إذا سبقتها مسافة، فتبقى ألوان HEX والقيم المشابهة سليمة.

هل تبقى الأرقام نصوصا؟

نعم افتراضيا، لأن متغيرات البيئة نصوص. فعل خيار تحويل الأنواع لتحويل 3000 وtrue.

ماذا لو تكرر المتغير؟

تعتمد آخر قيمة كما تفعل أغلب الأدوات، وتظهر أسماء المكررات في النتيجة.