फ़ॉर्मैट और मिनिफ़ाई
2 स्पेस, 4 स्पेस या टैब से प्रेटी-प्रिंट करें, या पूरा व्हाइटस्पेस हटा दें। पहले और बाद का आकार दिखता है, इसलिए बचत साफ़ नज़र आती है।
JSON पेस्ट करें और उसे फ़ॉर्मैट, वैलिडेट, ब्यूटिफ़ाई या मिनिफ़ाई करें, फिर नतीजे को खुलने-बंद होने वाले ट्री में देखें। सब कुछ आपके ब्राउज़र में चलता है। कुछ भी अपलोड नहीं होता।
अपना JSON यहाँ पेस्ट करें
या कोई .json फ़ाइल यहाँ कहीं भी छोड़ दें
फ़ॉर्मैट किया गया आउटपुट यहाँ दिखेगा।
नीचे लिखी हर चीज़ ऊपर के उसी एडिटर का हिस्सा है — कोई अपसेल नहीं, और कोई दूसरा पेज खोलने की ज़रूरत नहीं।
2 स्पेस, 4 स्पेस या टैब से प्रेटी-प्रिंट करें, या पूरा व्हाइटस्पेस हटा दें। पहले और बाद का आकार दिखता है, इसलिए बचत साफ़ नज़र आती है।
अमान्य JSON पर लाइन, कॉलम, गलती वाली सोर्स लाइन उसके नीचे कैरेट के साथ, और पार्सर को क्या चाहिए था — यह सब आसान भाषा में बताया जाता है।
ट्रेलिंग कॉमा, सिंगल कोट, बिना कोट वाली कीज़, // कमेंट, Python के True/None, JSONP रैपर और लाइन-डिलिमिटेड JSON — सब एक क्लिक में ठीक हो जाते हैं।
नोड सिर्फ़ खोलने पर बनते हैं और लंबे ऐरे टुकड़ों में लोड होते हैं, इसलिए कई मेगाबाइट का डॉक्यूमेंट भी टैब को जाम किए बिना खुलता है।
खोज दिखने वाले DOM की जगह पार्स किए गए डेटा पर चलती है, इसलिए बंद ब्रांच के अंदर के मैच भी मिलते हैं — और ट्री उन्हें दिखाने के लिए खुद खुल जाता है।
ऑब्जेक्ट्स का ऐरे एक ग्रिड बन जाता है जिसमें हर की कॉलम बनती है, और एक क्लिक में CSV एक्सपोर्ट हो जाता है।
ट्री की हर पंक्ति अपनी वैल्यू या उस तक पहुँचने वाला JSONPath — $.limits.retry.attempts — कॉपी करती है, जो सीधे कोड में पेस्ट किया जा सकता है।
ऑब्जेक्ट और ऐरे की गिनती, कुल और यूनिक कीज़, वैल्यू की संख्या, सबसे ज़्यादा नेस्टिंग गहराई और डॉक्यूमेंट का आकार — टाइप करते-करते अपडेट होते हैं।
कोई विज्ञापन नहीं, कोई कुकी बैनर नहीं, कोई साइन-इन दीवार नहीं, कोई “ऑनलाइन सेव करें” प्रॉम्प्ट नहीं। हर काम का शॉर्टकट है और ट्री ARIA ट्री पैटर्न पर बना है।
JSON फ़ॉर्मैटर डॉक्यूमेंट को पार्स करता है और उसे नई लाइनों तथा इंडेंट के साथ फिर से लिखता है, जिससे एक ही लंबी लाइन में आया पेलोड पढ़ने लायक बन जाता है। इस पेज पर वही पास वैलिडेशन भी कर देता है: जो इनपुट पार्स हो जाता है वह इंडेंट होकर ट्री में दिखता है, और जो नहीं होता वह पहली सिंटैक्स गलती पर रुक जाता है — लाइन, कॉलम और गड़बड़ करने वाले कैरेक्टर के साथ। फ़ॉर्मैटिंग सिर्फ़ टोकन के बीच का व्हाइटस्पेस बदलती है — आपकी कीज़, वैल्यू और उनका क्रम वैसा ही रहता है।
पार्सिंग आपके ब्राउज़र के अपने JSON.parse से होती है, इसलिए डॉक्यूमेंट कहीं नहीं भेजा
जाता और नेटवर्क बंद होने पर भी टूल काम करता रहता है।
यह API रिस्पॉन्स डीबग करने, कॉन्फ़िगरेशन फ़ाइलें पढ़ने, JSON वाली लॉग लाइनों को समझने और टेस्ट में जाने से पहले फ़िक्स्चर जाँचने — सबके लिए काफ़ी है।
नीचे दिया हर पेज यही एडिटर चलाता है, बस उस काम के हिसाब से खुलता है और विस्तार से समझाता है: JSON फ़ॉर्मैटर इंडेंट चुनने और कमांड-लाइन के बराबर विकल्पों पर, JSON वैलिडेटर उन सिंटैक्स गलतियों पर जो डेवलपर सबसे ज़्यादा करते हैं, JSON व्यूअर बड़े डॉक्यूमेंट में खोज और पाथ कॉपी करने पर, JSON ब्यूटिफ़ायर मिनिफ़ाई और एस्केप किए इनपुट पर, और JSON मिनिफ़ायर इस पर कि व्हाइटस्पेस असल में कितने बाइट लेता है।
JSON फ़ॉर्मैटर वह टूल है जो JSON डॉक्यूमेंट को पार्स करके उसे एक जैसी नई लाइनों और इंडेंट के साथ फिर से लिखता है, जिससे एक लाइन में आया API रिस्पॉन्स इंसान के पढ़ने लायक बन जाता है। चूँकि उसे पहले इनपुट पार्स करना पड़ता है, फ़ॉर्मैटर वैलिडेटर भी होता है — जो पार्स नहीं होगा वह एरर के साथ रुकेगा, फ़ॉर्मैट नहीं होगा। फ़ॉर्मैटिंग सिर्फ़ टोकन के बीच का व्हाइटस्पेस बदलती है, इसलिए कीज़, वैल्यू, टाइप और क्रम जैसे थे वैसे ही वापस मिलते हैं।
JSON को ऊपर के इनपुट पैनल में पेस्ट करें और फ़ॉर्मैट दबाएँ। इंडेंट सिलेक्टर से 2 स्पेस, 4 स्पेस या टैब चुनें। नतीजा तुरंत ट्री, टेक्स्ट या टेबल — तीनों रूपों में देखा जा सकता है, और कॉपी या डाउनलोड बटन से बाहर ले जाया जा सकता है। कोई अकाउंट, कोई अपलोड और कोई इंतज़ार नहीं।
फ़ॉर्मैटर इस सवाल का जवाब देता है कि “इसे कैसे पढ़ूँ?” और वैलिडेटर इसका कि “यह सही है या नहीं?”। एक ही पार्स दोनों काम करता है, इसलिए यह पेज फ़ॉर्मैट करते समय ही सिंटैक्स एरर भी बताता है। अलग JSON वैलिडेटर तब काम आता है जब जाँचना ही पूरा काम हो: वह एरर पैनल पर खुलता है और लाइन, कॉलम, गलती वाली लाइन तथा कैरेट के साथ आसान भाषा में बताता है कि पार्सर को वहाँ क्या चाहिए था।
बताई गई जगह से शुरू करें, क्योंकि ज़्यादातर गड़बड़ियाँ एक ही कैरेक्टर की होती हैं। आम वजहें हैं: } या ] से पहले ट्रेलिंग कॉमा, डबल कोट की जगह सिंगल कोट, बिना कोट वाले प्रॉपर्टी नाम, // कमेंट, और Python के True/False/None — ये JavaScript या Python में चलते हैं, JSON में नहीं। ठीक करें दबाने पर इनमें से हर एक सुधर जाता है, साथ ही JSONP रैपर और लाइन-डिलिमिटेड रिकॉर्ड भी।
डॉक्यूमेंट पेस्ट करके मिनिफ़ाई दबाएँ: टोकन के बीच का व्हाइटस्पेस हट जाता है और पहले-बाद का आकार दिखता है। यह उन पेलोड के लिए फ़ायदेमंद है जो नेटवर्क पर भेजे या डेटाबेस में रखे जाने हैं। इसे पलटना मुफ़्त है — फ़ॉर्मैट उसे बाइट-टु-बाइट वापस ले आता है। JSON मिनिफ़ायर सीधे इसी व्यू पर खुलता है।
हाँ। ट्री व्यू किसी भी ब्रांच को खोलता-बंद करता है, और खोज दिखने वाले DOM की जगह पार्स किए डेटा पर चलती है, इसलिए बंद ऑब्जेक्ट के अंदर छिपा मैच भी मिल जाता है और ट्री उसे दिखाने के लिए खुल जाता है। हर पंक्ति अपनी वैल्यू या उस तक का JSONPath कॉपी करती है। पंक्तियाँ सिर्फ़ खोलने पर बनती हैं और लंबे ऐरे टुकड़ों में लोड होते हैं — इसी से बड़ा डॉक्यूमेंट भी तेज़ रहता है। JSON व्यूअर इसे विस्तार से समझाता है।
नहीं। पेज ब्राउज़र के अपने JSON.parse को बुलाता है, और फ़ाइल अपलोड लोकल File API से होता है। फ़ॉर्मैट, वैलिडेट या देखने में कोई बैकएंड शामिल नहीं है। पेज लोड होने के बाद नेटवर्क बंद कर दें, फिर भी सब कुछ चलता रहेगा।
वैलिडेशन ब्राउज़र के अपने पार्सर से होता है, जो RFC 8259 / ECMA-404 लागू करता है। यही पार्सर आपका ऐप्लिकेशन कोड भी इस्तेमाल करेगा, इसलिए जो डॉक्यूमेंट यहाँ पास होता है वह प्रोडक्शन में भी पार्स होगा।
कई मेगाबाइट के डॉक्यूमेंट आराम से चलते हैं। ट्री सिर्फ़ उन नोड्स का DOM बनाता है जिन्हें आप खोलते हैं, और ऐरे एक बार में 200 चाइल्ड लोड करते हैं। करीब 1.5 MB से ऊपर एडिटर हर कीस्ट्रोक पर पार्स करना बंद कर देता है और आपके फ़ॉर्मैट दबाने का इंतज़ार करता है, जिससे टाइपिंग रुकती नहीं।
आपका सबसे हाल का डॉक्यूमेंट (500 KB तक), आपका इंडेंट विकल्प, आपका व्यू और आपकी थीम — सब आपके ही डिवाइस के localStorage में, ताकि रीलोड पर काम न खोए। “खाली करें” डॉक्यूमेंट हटा देता है।
डेटा हैंडलिंग
ज़्यादातर ऑनलाइन फ़ॉर्मैटर आपके डॉक्यूमेंट को फ़ॉर्मैट करने के लिए किसी बैकएंड पर POST करते हैं। यहाँ इसकी ज़रूरत नहीं — JSON टूल को जो कुछ करना है, वह सब ब्राउज़र में ही मौजूद है।
आपका JSON ब्राउज़र के अपने JSON.parse को दिया जाता है। कोई API कॉल नहीं, कोई सर्वर राउंड ट्रिप नहीं, और कोई ऐसी रिक्वेस्ट नहीं जो आपका डॉक्यूमेंट लेकर जाए।
अपलोड और ड्रैग-एंड-ड्रॉप फ़ाइल को लोकल File API से पढ़ते हैं। बाइट्स मशीन से बाहर नहीं जाते — आप नेटवर्क बंद करके भी JSON फ़ॉर्मैट कर सकते हैं।
कोई एनालिटिक्स नहीं, कोई ऐड नेटवर्क नहीं, कोई CDN कॉल नहीं, कोई एम्बेड किया विजेट नहीं। फ़ॉन्ट बिल्ड के समय ही साइट में शामिल कर दिए जाते हैं, इसलिए पेज सिर्फ़ इसी ओरिजिन से लोड होता है।
आपका सबसे हाल का डॉक्यूमेंट इसी ब्राउज़र के localStorage में रखा जाता है (500 KB तक), ताकि रीलोड पर आपका काम न खोए। यह आपके डिवाइस पर ही रहता है, और “खाली करें” इसे हटा देता है।
खुद जाँच लें: ब्राउज़र devtools खोलें, Network टैब पर जाएँ और कोई डॉक्यूमेंट फ़ॉर्मैट करें। आपको कोई रिक्वेस्ट नहीं दिखेगी। या पेज लोड करके ऑफ़लाइन हो जाएँ और काम करते रहें।
हर काम कीबोर्ड से हो सकता है। ट्री ARIA ट्री पैटर्न का पालन करता है, इसलिए ऐरो कीज़ से माउस छुए बिना नोड्स के बीच जाया जा सकता है।
| कीज़ | काम |
|---|---|
| Ctrl / ⌘ + Enter | डॉक्यूमेंट को फ़ॉर्मैट और प्रेटी-प्रिंट करें |
| Ctrl / ⌘ + Shift + M | डॉक्यूमेंट को मिनिफ़ाई करें |
| Ctrl / ⌘ + K | ट्री सर्च बॉक्स पर फ़ोकस करें |
| Enter / Shift + Enter | अगला / पिछला सर्च मैच |
| Ctrl / ⌘ + Shift + C | आउटपुट कॉपी करें |
| Ctrl / ⌘ + S | आउटपुट डाउनलोड करें |
| Tab | एडिटर में इंडेंट डालें |
| ↑ ↓ ← → | ट्री नोड्स में जाएँ, खोलें और बंद करें |
वही इंजन, वही प्राइवेसी — हर पेज पूरी तरह आपके ब्राउज़र में चलता है।
JSON को 2 स्पेस, 4 स्पेस या टैब से इंडेंट करें, फिर कॉपी या डाउनलोड करें।
JSON ट्री को खोलें, बंद करें और खोजें; कोई भी वैल्यू या उसका पाथ कॉपी करें।
सिंटैक्स एरर की ठीक लाइन, कॉलम और सुझाया गया सुधार पाएँ।
व्हाइटस्पेस हटाएँ और पहले-बाद की बाइट बचत देखें।
मिनिफ़ाई या टूटे JSON को साफ़, हाइलाइट किए आउटपुट में बदलें।