JSON से YAML कन्वर्टर

JSON को साफ़ और आसानी से पढ़े जा सकने वाले YAML में बदलें। यह YAML 1.2 के नियमों के अनुसार नेस्टेड ऑब्जेक्ट्स, ऐरे और प्रिमिटिव वैल्यूज़ को कन्वर्ट करता है — जो Kubernetes मैनिफ़ेस्ट, CI/CD पाइपलाइन और कॉन्फ़िगरेशन फ़ाइलों के लिए बहुत अच्छा है।

हमें रेटिंग दें
0.00में से5(0 रेटिंग्स)
विशेषताएँ और फ़ायदे

JSON ऑब्जेक्ट्स को YAML मैपिंग्स में और एरेज़ को YAML सीक्वेंस में बदलता है।

2-स्पेस इंडेंटेशन के साथ साफ़ इंडेंटेड YAML बनाता है।

स्ट्रिंग्स, नंबर्स, बूलियन्स, नल, नेस्टेड ऑब्जेक्ट्स और एरेज़ को हैंडल करता है।

Kubernetes, Docker Compose, GitHub Actions और Ansible के लिए उपयुक्त YAML आउटपुट देता है।

गलत फ़ॉर्मेट वाले आउटपुट से बचने के लिए कन्वर्ज़न से पहले JSON इनपुट को वैलिडेट करता है।

कैसे इस्तेमाल करें

स्टेप 01

इनपुट फ़ील्ड में सही JSON पेस्ट करें।

स्टेप 02

कन्वर्टर समतुल्य YAML आउटपुट देता है।

स्टेप 03

YAML स्ट्रक्चर और इंडेंटेशन की समीक्षा करें।

स्टेप 04

अपनी कॉन्फ़िग फ़ाइलों या इंफ़्रास्ट्रक्चर डेफ़िनिशन में इस्तेमाल करने के लिए कॉपी करें

उपयोग के मामले

इंफ्रास्ट्रक्चर और डेवऑप्स

  • JSON से Kubernetes मैनिफ़ेस्ट बनाएँ
  • JSON API स्पेक्स को OpenAPI YAML में बदलें
  • Terraform JSON को YAML कॉन्फ़िग में बदलें

एप्लिकेशन कॉन्फ़िगरेशन

  • JSON ऐप कॉन्फ़िगरेशन को YAML फ़ॉर्मैट में बदलें
  • Ansible प्लेबुक वेरिएबल्स तैयार करें
  • GitHub Actions वर्कफ़्लो फ़्रैगमेंट बनाएँ
प्लेटफ़ॉर्म कम्पैटिबिलिटी

क्लाउड और डेवऑप्स

  • कुबेरनेटीज़
  • डॉकर कम्पोज़
  • GitHub Actions
  • एन्सिबल
  • हेल्म चार्ट्स
प्रो टिप्स

YAML, JSON का एक सुपरसेट है, इसलिए कोई भी वैलिड JSON, वैलिड YAML भी होता है — लेकिन पहले YAML में बदलने से कॉन्फ़िग को पढ़ना और एडिट करना बहुत आसान हो जाता है।

YAML में, ':' या '#' जैसे स्पेशल कैरेक्टर वाले स्ट्रिंग्स को कोट (quotes) में रखने की ज़रूरत पड़ सकती है — ऐसे वैल्यूज़ के लिए आउटपुट को ज़रूर देखें जिनका गलत मतलब निकाला जा सकता है।

JSON में नंबर्स और बूलियन्स बिना कोट्स वाले YAML स्कैलर्स बन जाते हैं, जो आमतौर पर सही होता है, लेकिन 'true', 'false', 'null' जैसी वैल्यूज़ पर ध्यान दें जो स्ट्रिंग्स के तौर पर हो सकती हैं।

बेहतरीन तरीके

कन्वर्ट किए गए YAML में ऐसे स्ट्रिंग वैल्यूज़ की जाँच करें जो बूलियन (booleans) या नल (nulls) जैसे दिखते हैं — आउटपुट में उन्हें साफ़ तौर पर कोट्स (quotes) में रखने की ज़रूरत हो सकती है।

कन्वर्ट की गई कॉन्फ़िग फ़ाइलों में जानकारी जोड़ने के लिए YAML कमेंट्स का इस्तेमाल करें, क्योंकि JSON में कमेंट्स का सपोर्ट नहीं होता है।

प्रोडक्शन इंफ्रास्ट्रक्चर डेफिनिशन में इस्तेमाल करने से पहले, YAML आउटपुट को YAML लिंटर से वैलिडेट करें।

अक्सर पूछे जाने वाले सवाल

अक्सर पूछे जाने वाले सवाल

हमारे टूल्स और सेवाओं के बारे में आम सवालों के जवाब पाएँ।

विस्तृत गाइड

JSON से YAML कन्वर्टर को समझना

YAML (YAML Ain't Markup Language) को खास तौर पर इंसानों के लिए आसान डेटा सीरियलाइज़ेशन फ़ॉर्मैट के तौर पर डिज़ाइन किया गया था। जहाँ JSON कम से कम सिंटैक्स के साथ मशीन द्वारा आसानी से पढ़े जा सकने (मशीन पार्सिबिलिटी) पर ज़ोर देता है, वहीं YAML इंसानों के पढ़ने में आसानी (ह्यूमन रीडेबिलिटी) को प्राथमिकता देता है; इसमें इंडेंटेशन-आधारित स्ट्रक्चर, ऑप्शनल कोटिंग, इनलाइन कमेंट्स और मल्टी-लाइन स्ट्रिंग सपोर्ट जैसी सुविधाएँ होती हैं। मॉडर्न 'इन्फ्रास्ट्रक्चर-एज़-कोड' मूवमेंट — जिसमें Kubernetes, Helm, Ansible, GitHub Actions, CircleCI और दर्जनों अन्य टूल्स शामिल हैं — ने YAML को स्टैंडर्ड कॉन्फ़िगरेशन भाषा के तौर पर अपनाया। ऐसा इसलिए किया गया क्योंकि काम करने वालों को रोज़मर्रा के ऑपरेशन्स के हिस्से के तौर पर कॉन्फ़िगरेशन डॉक्यूमेंट्स को पढ़ना, लिखना और रिव्यू करना होता है। इसलिए, जब JSON-नेटिव API या SDK से डेटा को इन्फ्रास्ट्रक्चर टूलिंग में ले जाया जाता है, तो JSON को YAML में बदलना एक आम प्रक्रिया होती है।

JSON से YAML में स्ट्रक्चरल मैपिंग आसान है क्योंकि YAML 1.2 को खास तौर पर JSON के सुपरसेट के तौर पर डिज़ाइन किया गया था। JSON ऑब्जेक्ट YAML मैपिंग बन जाते हैं: की-वैल्यू पेयर को `key: value` के तौर पर लिखा जाता है, जिसमें आस-पास कोई ब्रेस नहीं होते। JSON एरे YAML सीक्वेंस बन जाते हैं: हर एलिमेंट एक नई लाइन पर होता है और उसके आगे `- ` प्रीफिक्स लगा होता है। नेस्टेड स्ट्रक्चर को डेलिमिटर कैरेक्टर के बजाय इंडेंटेशन के ज़रिए दिखाया जाता है। JSON स्ट्रिंग YAML स्केलर बन जाते हैं; इनमें से ज़्यादातर को कोटिंग की ज़रूरत नहीं होती, जब तक कि उनमें ऐसे कैरेक्टर न हों जिनका YAML में खास मतलब हो — जैसे कोलन के बाद स्पेस, वैल्यू की शुरुआत में हैश साइन, या ऐसी स्ट्रिंग जिन्हें अन्यथा बूलियन या नल के तौर पर पार्स किया जा सकता है।

JSON से YAML में बदलने की प्रक्रिया में एक ज़रूरी बात YAML पार्सर्स में 'इम्प्लिसिट टाइप कोअर्शन' (implicit type coercion) की है। YAML पार्सर्स बिना कोटेशन वाले स्केलर वैल्यूज़ पर 'टाइप इन्फरेंस' (type inference) लागू करते हैं: "true", "false", "yes", "no", "null", और "~" जैसे स्ट्रिंग्स को स्ट्रिंग्स के तौर पर नहीं, बल्कि उनके संबंधित बूलियन या नल (null) टाइप्स के तौर पर पार्स किया जाता है। बिना कोटेशन वाले नंबर्स इंटीजर्स या फ्लोट्स बन जाते हैं। JSON नंबर और बूलियन वैल्यूज़ को बदलते समय यह व्यवहार आमतौर पर सही होता है, लेकिन अगर आपके JSON में "true" या "null" जैसी स्ट्रिंग वैल्यूज़ हैं जिन्हें YAML में भी स्ट्रिंग ही रहना चाहिए, तो इससे समस्या हो सकती है। अच्छे कन्वर्टर्स ऐसी स्ट्रिंग वैल्यूज़ को कोटेशन में रखकर इस समस्या को संभालते हैं, वरना उनका गलत मतलब निकाला जा सकता है।

यह JSON से YAML कन्वर्टर JSON इनपुट को प्रोसेस करता है और सही इंडेंटेशन वाला YAML आउटपुट बनाता है। यह आउटपुट Kubernetes मैनिफ़ेस्ट, Docker Compose फ़ाइलों, CI/CD कॉन्फ़िगरेशन, Ansible प्लेबुक और दूसरे YAML-आधारित इंफ्रास्ट्रक्चर टूल्स में सीधे इस्तेमाल करने के लिए उपयुक्त है। कन्वर्ज़न से पहले इनपुट को वैलिडेट किया जाता है, जिससे सिंटैक्स की गलतियाँ शुरू में ही पकड़ में आ जाती हैं। आउटपुट में नेस्टेड JSON का पूरा हायरार्किकल स्ट्रक्चर बना रहता है और हर लेवल पर साफ़ दो-स्पेस वाला इंडेंटेशन होता है। YAML में जिन स्पेशल स्ट्रिंग वैल्यूज़ को कोट्स (quotes) की ज़रूरत होती है, उन्हें आउटपुट में अपने-आप कोट्स में रखा जाता है। जो टीमें कॉन्फ़िगरेशन मैनेजमेंट के लिए YAML को स्टैंडर्ड बना रही हैं और API कम्युनिकेशन के लिए JSON का इस्तेमाल जारी रख रही हैं, उनके लिए यह टूल दोनों फ़ॉर्मैट्स के बीच एक भरोसेमंद कड़ी का काम करता है।

हर ज़रूरत के लिए टूल्स