Glyph WidgetsGlyph Widgets
टूलके बारे मेंसंपर्कब्लॉगगोपनीयताशर्तेंविज्ञापन हटाएंKo-fi पर सहायता करें

© 2026 Glyph Widgets LLC. सर्वाधिकार सुरक्षित।

·

100% क्लाइंट-साइड प्रोसेसिंग

ब्लॉग पर वापस जाएं

YAML Formatter: YAML वैलिडेट और फ़ॉर्मेट करें

YAML formatter ब्राउज़र में YAML फ़ॉर्मेट करता, वैलिडेट करता और JSON में कन्वर्ट करता है। कॉन्फ़िगरेबल इंडेंटेशन, डाउनलोड सपोर्ट।

Glyph Widgets
27 फ़रवरी 2026
11 मिनट पढ़ने का समय
yaml formatteryaml validatoryaml beautifieryaml फ़ॉर्मेट ऑनलाइनyaml pretty print

YAML Formatter क्या है?

YAML Formatter एक ब्राउज़र-आधारित टूल है जो YAML टेक्स्ट को पार्स, वैलिडेट और कॉन्सिस्टेंट, कॉन्फ़िगरेबल इंडेंटेशन के साथ री-सीरियलाइज़ करता है। YAML की इंडेंटेशन-सेंसिटिव सिंटैक्स का मतलब है कि एक गलत-एलाइन्ड ब्लॉक पूरे डॉक्यूमेंट का अर्थ बदल सकता है या एक ऐसी एरर पैदा कर सकता है जिसे दृष्टि से ढूंढना मुश्किल है। यह टूल ऐसी समस्याओं को तुरंत पकड़ता है और आपके पसंदीदा स्टाइल से मेल खाती साफ़ आउटपुट देता है।

बेसिक फ़ॉर्मेटिंग के अलावा, टूल YAML को सीधे JSON में कन्वर्ट करता है — जब API या टूल को JSON चाहिए लेकिन आपकी सोर्स कॉन्फ़िगरेशन YAML है, या जब आपको यह वेरिफ़ाई करना हो कि आपका YAML एक्सपेक्टेड डेटा स्ट्रक्चर में पार्स होता है। दोनों ऑपरेशन js-yaml लाइब्रेरी का उपयोग करके पूरी तरह आपके ब्राउज़र में चलते हैं। कोई डेटा आपकी मशीन से बाहर नहीं जाता, कोई अकाउंट नहीं चाहिए, और टूल मुफ़्त है।

मुख्य विशेषताएं

  • सही इंडेंटेशन के साथ YAML फ़ॉर्मेट करें — js-yaml से इनपुट पार्स करता है और आपके चुने हुए इंडेंट साइज़ से री-डंप करता है। lineWidth: -1 ऑप्शन फ़ॉर्मेटर को लंबी स्ट्रिंग्स में लाइन ब्रेक डालने से रोकता है, और noRefs: true एंकर और एलियास को उनके पूरे वैल्यू में एक्सपैंड करता है।
  • एरर मैसेज के साथ YAML सिंटैक्स वैलिडेट करें — अगर js-yaml पार्स एरर थ्रो करता है, तो सटीक एरर मैसेज (लाइन नंबर सहित) आउटपुट पैनल के नीचे दिखता है। एरर में एक्सेसिबल role="alert" एट्रीब्यूट होता है।
  • YAML को JSON में कन्वर्ट करें — YAML पार्स करता है और JSON.stringify का उपयोग करके आपके चुने हुए इंडेंटेशन से JSON के रूप में रिज़ल्ट सीरियलाइज़ करता है। डाउनलोड लॉजिक डिटेक्ट करता है कि आउटपुट { या [ से शुरू होता है या नहीं और .json एक्सटेंशन के साथ फ़ाइल ऑटोमैटिकली सेव करता है।
  • फ़ॉर्मेटेड आउटपुट क्लिपबोर्ड में कॉपी करें — Clipboard API का उपयोग करता है एक textarea फ़ॉलबैक के साथ।
  • .yaml या .json फ़ाइल के रूप में डाउनलोड करें — जब आउटपुट JSON है (कन्वर्ट ऑपरेशन से), फ़ाइल formatted.json के रूप में सेव होती है। जब आउटपुट YAML है (Format ऑपरेशन से), यह formatted.yaml के रूप में सेव होती है।
  • कीबोर्ड शॉर्टकट — Ctrl+Enter (Cmd+Enter) फ़ॉर्मेट करता है; Ctrl+Shift+J (Cmd+Shift+J) JSON में कन्वर्ट करता है।

YAML Formatter का उपयोग कैसे करें

चरण 1: अपना YAML पेस्ट करें

/developer/code/yaml-formatter पर टूल पर जाएं। बाईं तरफ इनपुट पैनल में अपना YAML पेस्ट करें। textarea मोनोस्पेस है और रिसाइज़ेबल है। ब्राउज़र मेमोरी में फ़िट होने वाले किसी भी साइज़ के YAML डॉक्यूमेंट एक्सेप्ट किए जाते हैं — टूल कोई साइज़ रेस्ट्रिक्शन एनफ़ोर्स नहीं करता।

चरण 2: इंडेंटेशन चुनें

पैनल के नीचे एक्शन बार में इंडेंट ड्रॉपडाउन खोलें। 2 स्पेस या 4 स्पेस चुनें। सेलेक्शन Format आउटपुट और JSON कन्वर्ज़न आउटपुट दोनों को प्रभावित करता है। दो-स्पेस इंडेंट YAML कम्युनिटी डिफ़ॉल्ट है और Kubernetes मैनिफेस्ट, Ansible प्लेबुक और अधिकांश CI/CD पाइपलाइन फ़ाइलों द्वारा उपयोग किया जाता है। चार-स्पेस इंडेंट कुछ Python और Java प्रोजेक्ट कन्वेंशन के साथ अलाइन है।

चरण 3: फ़ॉर्मेट या कन्वर्ट करें

दाहिने पैनल में नॉर्मलाइज़्ड YAML आउटपुट बनाने के लिए Format पर क्लिक करें (या Ctrl+Enter / Cmd+Enter दबाएं)। एक्विवेलेंट JSON डॉक्यूमेंट बनाने के लिए To JSON पर क्लिक करें (या Ctrl+Shift+J / Cmd+Shift+J दबाएं)।

उदाहरण इनपुट — असंगत इंडेंटेशन वाला एक Kubernetes Deployment मैनिफेस्ट:

apiVersion: apps/v1
kind: Deployment
metadata:
    name: web-frontend
    labels:
      app: web
spec:
  replicas: 3
  selector:
      matchLabels:
        app: web
  template:
      metadata:
        labels:
          app: web
      spec:
        containers:
        - name: nginx
          image: nginx:1.25
          ports:
          - containerPort: 80

2-स्पेस इंडेंट के साथ Format के बाद आउटपुट:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-frontend
  labels:
    app: web
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
        - name: nginx
          image: nginx:1.25
          ports:
            - containerPort: 80

चरण 4: JSON में कन्वर्ट करें (वैकल्पिक)

इनपुट में उसी YAML के साथ, To JSON पर क्लिक करें। आउटपुट पैनल एक्विवेलेंट JSON डॉक्यूमेंट दिखाता है:

{
  "apiVersion": "apps/v1",
  "kind": "Deployment",
  "metadata": {
    "name": "web-frontend",
    "labels": {
      "app": "web"
    }
  }
}

(संक्षिप्तता के लिए छोटा किया गया — पूरे डॉक्यूमेंट में spec शामिल होगा)

चरण 5: कॉपी या डाउनलोड करें

आउटपुट को क्लिपबोर्ड में कॉपी करने के लिए Copy पर क्लिक करें। फ़ाइल सेव करने के लिए Download पर क्लिक करें। टूल ऑटोमैटिकली .yaml या .json को फ़ाइल एक्सटेंशन के रूप में चुनता है इसके आधार पर कि आउटपुट JSON जैसा दिखता है या नहीं (शुरुआत { या [ से होती है)।

व्यावहारिक उदाहरण

CI/CD पाइपलाइन फ़ाइल नॉर्मलाइज़ करना

एक GitHub Actions वर्कफ़्लो फ़ाइल को कई कॉन्ट्रीब्यूटर्स ने एडिट किया है और उसमें मिक्स्ड इंडेंटेशन है। इसे फ़ॉर्मेटर में पेस्ट करें, 2-स्पेस इंडेंट के साथ Format पर क्लिक करें, और आउटपुट पूरे में कॉन्सिस्टेंट इंडेंटेशन दिखाता है। चेंज कमिट करने से पहले, इनपुट और आउटपुट की तुलना करें यह कन्फ़र्म करने के लिए कि कोई सिमैंटिक डिफरेंस नहीं आई — क्योंकि YAML इंडेंटेशन-सेंसिटिव है, रिफ़ॉर्मेटिंग अलाइनमेंट बग्स को उजागर कर सकती है जो ओरिजिनल में छिपे थे।

कॉन्फ़िगरेशन स्ट्रक्चर वेरिफ़ाई करना

आप एक Node.js एप्लिकेशन के लिए कॉन्फ़िगरेशन फ़ाइल मेंटेन करते हैं जो YAML के साथ डिप्लॉय होती है लेकिन रनटाइम इसे पार्स्ड JavaScript ऑब्जेक्ट के रूप में पढ़ता है। कॉन्फ़िग पेस्ट करें और To JSON पर क्लिक करें। JSON आउटपुट दिखाता है कि पार्स्ड ऑब्जेक्ट कैसा दिखता है, सहित टाइप कोएर्शन (bare true/false → बूलियन, अनक्वोटेड नंबर → नंबर)। यह कन्फ़र्म करता है कि port: 8080 जैसे वैल्यू एक नंबर होगा न कि स्ट्रिंग "8080"।

इनपुट:

server:
  host: 0.0.0.0
  port: 8080
  debug: false
database:
  url: postgres://localhost:5432/myapp
  pool: 10

JSON आउटपुट:

{
  "server": {
    "host": "0.0.0.0",
    "port": 8080,
    "debug": false
  },
  "database": {
    "url": "postgres://localhost:5432/myapp",
    "pool": 10
  }
}

YAML एंकर एक्सपैंड करना

YAML वैल्यू रियूज़ के लिए एंकर (&) और एलियास (*) सपोर्ट करता है। फ़ॉर्मेटर noRefs: true का उपयोग करता है, जिसका मतलब है कि सभी एलियास आउटपुट में उनके पूरे वैल्यू में एक्सपैंड होते हैं। इससे फ़ॉर्मेटेड डॉक्यूमेंट सेल्फ-कंटेन्ड हो जाता है और उन टूल्स में पढ़ना आसान होता है जो एंकर सपोर्ट नहीं करते।

टिप्स और बेस्ट प्रैक्टिस

फ़ॉर्मेटर की-ऑर्डर प्रिज़र्व करता है। js-yaml डंप ऑप्शन में sortKeys: false शामिल है, इसलिए आपकी की-ऑर्डरिंग फ़ॉर्मेटेड आउटपुट में ज्यों की त्यों बनाए रखी जाती है। यह Kubernetes और Ansible डॉक्यूमेंट के लिए महत्वपूर्ण है जहां फ़ील्ड ऑर्डर कन्वेंशन रखता है भले ही टेक्निकली ज़रूरी न हो।

लंबी स्ट्रिंग्स रैप नहीं होती। lineWidth: -1 सेटिंग ऑटोमेटिक लाइन-रैपिंग डिसेबल करती है। मल्टी-लाइन स्ट्रिंग और लंबे वैल्यू एक सिंगल लाइन पर रहेंगे बजाय किसी आर्बिट्रेरी कॉलम पर ब्रेक होने के। अगर आपको लाइन-रैप्ड आउटपुट चाहिए, रिज़ल्ट कॉपी करें और अपने एडिटर में रैपिंग अप्लाई करें।

वर्शन कंट्रोल में कमिट करने से पहले वैलिडेट करें। YAML इंडेंटेशन एरर CI फेलियर का एक कॉमन सोर्स है। पुश करने से पहले अपनी पाइपलाइन फ़ाइल इस फ़ॉर्मेटर से चलाएं। बिना किसी एरर मैसेज के एक क्लीन फ़ॉर्मेट पास कन्फ़र्म करता है कि YAML सिंटैक्टिकली वैलिड है।

डाउनलोड पर फ़ाइल एक्सटेंशन चेक करें। डाउनलोड लॉजिक आउटपुट कंटेंट इंस्पेक्ट करता है, आपके द्वारा किए गए ऑपरेशन को नहीं। अगर आपने YAML फ़ॉर्मेट किया और वह YAML { से शुरू होता है (कुछ YAML फ़ाइलें JSON-कंपैटिबल सिंटैक्स उपयोग करती हैं), फ़ाइल .json के रूप में सेव होती है। ज़रूरत पड़ने पर इसे रिनेम करें।

YAML बूलियन सख्त हैं। YAML स्पेसिफ़िकेशन YAML 1.1 में true, false, yes, no, on और off को बूलियन वैल्यू के रूप में पहचानता है। js-yaml लाइब्रेरी डिफ़ॉल्ट रूप से YAML 1.2 फ़ॉलो करती है जहां केवल true और false बूलियन हैं। अगर आपका YAML yes/no उपयोग करता है, फ़ॉर्मेटर उन्हें प्लेन स्ट्रिंग के रूप में ट्रीट करता है।

सामान्य समस्याएं और ट्रबलशूटिंग

लाइन और कॉलम नंबर के साथ एरर मैसेज — js-yaml पार्स एरर में समस्या का सटीक स्थान शामिल होता है। अपनी इनपुट में इंडिकेटेड लाइन देखें। सामान्य कारण हैं: स्पेस की जगह टैब से इंडेंटेशन (YAML टैब की अनुमति नहीं देता), अनक्वोटेड स्ट्रिंग के अंदर कोलन (जैसे url: http://example.com को url: "http://example.com" होना चाहिए या ब्लॉक स्केलर उपयोग करना चाहिए), या गलत नेस्टिंग लेवल।

आउटपुट में इनपुट के वैल्यू मिसिंग हैं — अगर आपके YAML में !! टाइप टैग (जैसे !!binary, !!timestamp) हैं जिन्हें js-yaml नहीं पहचानता, वे वैल्यू ड्रॉप या ट्रांसफ़ॉर्म हो सकते हैं। टाइप टैग आइडेंटिफ़ाई करने के लिए स्पेसिफ़िक वैल्यू इंस्पेक्ट करें और ज़रूरत पड़ने पर वैल्यू को क्वोट करें।

"Please enter YAML to format" एरर — जब आपने Format या Convert पर क्लिक किया, इनपुट फ़ील्ड खाली या केवल व्हाइटस्पेस था। पहले इनपुट पैनल में अपना YAML पेस्ट करें।

कन्वर्टेड JSON में अनएक्सपेक्टेड null वैल्यू हैं — ~ का एक YAML वैल्यू या खाली वैल्यू (कोलन के बाद वैल्यू के बिना की) JSON में null बन जाता है। यह सही व्यवहार है और YAML स्पेसिफ़िकेशन से मेल खाता है। वैल्यू को क्वोट करें अगर आपका इरादा स्ट्रिंग "~" या खाली स्ट्रिंग "" था।

डाउनलोड .yaml की जगह .json के रूप में सेव होती है — डाउनलोड हैंडलर चेक करता है कि आउटपुट { या [ से शुरू होता है या नहीं। कुछ YAML डॉक्यूमेंट JSON-कंपैटिबल YAML सिंटैक्स में लिखे होते हैं और एक ब्रेस से शुरू होते हैं। अगर यह आपकी आउटपुट का मामला है, सेव करने के बाद डाउनलोड की गई फ़ाइल को .yaml में रिनेम करें।

प्राइवेसी और सिक्योरिटी

YAML Formatter js-yaml लाइब्रेरी का उपयोग करके सभी इनपुट को लोकली आपके ब्राउज़र में प्रोसेस करता है। कोई भी टेक्स्ट जो आप पेस्ट करते हैं — जिसमें डेटाबेस कनेक्शन स्ट्रिंग, API टोकन, प्राइवेट कीज़ या पर्सनल कॉन्फ़िगरेशन डेटा शामिल है — किसी भी सर्वर पर नहीं भेजा जाता। पेज लोड होने के बाद टूल बिना नेटवर्क कनेक्शन के काम करता है। फ़ॉर्मेटिंग ऑपरेशन पर कोई सेशन ट्रैकिंग नहीं है।

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

क्या YAML Formatter मुफ़्त है? हां, बिना उपयोग सीमा के पूरी तरह मुफ़्त। सभी फ़ॉर्मेटिंग, वैलिडेशन और कन्वर्शन ऑपरेशन बिना किसी खर्च के उपलब्ध हैं। Glyph Widgets सपोर्टर फ़ीचर — सेव्ड प्रेसेट, सेशन हिस्ट्री, टूल नोट्स — Ko-fi सपोर्टर के लिए उपलब्ध हैं, लेकिन कोर YAML फ़ंक्शनेलिटी के लिए कुछ नहीं चाहिए।

क्या यह ऑफ़लाइन काम करता है? हां। सभी प्रोसेसिंग आपके ब्राउज़र में चलती है। पेज लोड होने के बाद, आप इंटरनेट से डिसकनेक्ट कर सकते हैं और बिना किसी रुकावट के फ़ॉर्मेटर और कन्वर्टर का उपयोग जारी रख सकते हैं।

क्या मेरा डेटा सुरक्षित है? हां। आपका YAML इनपुट कभी किसी सर्वर पर ट्रांसमिट नहीं होता। यह केवल आपके ब्राउज़र की मेमोरी में रहता है और Clear पर क्लिक करने या टैब बंद करने पर क्लियर हो जाता है।

क्या फ़ॉर्मेटर YAML मल्टी-डॉक्यूमेंट फ़ाइलें सपोर्ट करता है (कई --- सेक्शन)? js-yaml का load फ़ंक्शन एक स्ट्रीम में पहला डॉक्यूमेंट पार्स करता है। मल्टी-डॉक्यूमेंट YAML फ़ाइलें (--- से अलग) केवल उनका पहला डॉक्यूमेंट फ़ॉर्मेट करवाएंगी। मल्टी-डॉक्यूमेंट फ़ाइलों के लिए yaml.loadAll बिहेवियर का उपयोग करें — लेकिन यह टूल फ़िलहाल केवल पहले डॉक्यूमेंट को प्रोसेस करता है।

Format और To JSON में क्या अंतर है? Format पार्स्ड YAML को कॉन्सिस्टेंट इंडेंटेशन के साथ YAML के रूप में री-सीरियलाइज़ करता है। To JSON उसी पार्स्ड डेटा को JSON डॉक्यूमेंट के रूप में सीरियलाइज़ करता है। दोनों ऑपरेशन एक ही पार्स स्टेप उपयोग करते हैं, इसलिए दोनों YAML वैलिडेट करते हैं और इनवैलिड इनपुट पर एक जैसे फ़ेल होते हैं।

क्या फ़ॉर्मेटर कमेंट्स प्रिज़र्व करता है? नहीं। js-yaml पार्सर पार्सिंग के दौरान कमेंट्स डिस्कार्ड करता है। फ़ॉर्मेटिंग के बाद, ओरिजिनल इनपुट में कमेंट्स आउटपुट में नहीं दिखेंगे। अगर आपको कमेंट्स प्रिज़र्व करने हैं, तो अपने सोर्स फ़ाइल में मैन्युअली इंडेंटेशन एडिट करें।

क्या मैं JSON को YAML में कन्वर्ट कर सकता/सकती हूं? यह टूल YAML को JSON में कन्वर्ट करता है। विपरीत दिशा में कन्वर्ट करने के लिए, जल्द आ रहा है: JSON Converter टूल का उपयोग करें, जो JSON-से-YAML कन्वर्शन सपोर्ट करता है।

टूल कौन सा YAML वर्शन सपोर्ट करता है? js-yaml लाइब्रेरी YAML 1.2 इम्प्लीमेंट करती है, जो YAML 1.1 की तुलना में बूलियन वैल्यू और कुछ अन्य एज केस के बारे में अधिक सख्त है। अधिकांश मॉडर्न YAML फ़ाइलें (Kubernetes, Docker Compose, GitHub Actions, आदि) YAML 1.2 के साथ कंपैटिबल होने के लिए लिखी जाती हैं।

JSON में कन्वर्ट करने का कीबोर्ड शॉर्टकट क्या है? Convert to JSON ऑपरेशन ट्रिगर करने के लिए Windows/Linux पर Ctrl+Shift+J या macOS पर Cmd+Shift+J दबाएं। Format करने के लिए Ctrl+Enter या Cmd+Enter दबाएं।

क्या डाउनलोड पर फ़ाइल एक्सटेंशन मेरे द्वारा किए गए ऑपरेशन को रिफ्लेक्ट करती है? सीधे नहीं — डाउनलोड हैंडलर .json और .yaml के बीच तय करने के लिए चेक करता है कि आउटपुट टेक्स्ट { या [ से शुरू होता है या नहीं। फ़ॉर्मेटेड YAML आउटपुट जो एक मैपिंग से शुरू होता है .yaml के रूप में सेव होगी, और JSON कन्वर्टेड आउटपुट (जो हमेशा { या [ से शुरू होता है) .json के रूप में सेव होगी।

संबंधित टूल्स

JSON Formatter — Schema वैलिडेशन, Schema जनरेशन और इंटरैक्टिव ट्री व्यूअर के साथ JSON फ़ॉर्मेट, वैलिडेट और मिनिफ़ाई करें।

XML Formatter — उसी इंडेंटेशन कंट्रोल और मिनिफ़िकेशन सपोर्ट के साथ XML डॉक्यूमेंट फ़ॉर्मेट और वैलिडेट करें।

जल्द आ रहा है: TOML Formatter — TOML कॉन्फ़िगरेशन फ़ाइलें फ़ॉर्मेट और वैलिडेट करें।

अभी YAML Formatter आज़माएं: YAML Formatter

अंतिम अपडेट: 27 फ़रवरी 2026

पढ़ना जारी रखें

और लेखYAML Formatter आज़माएं