JSON to Zod

Generate Zod schemas from JSON

स्कीमा विकल्प

const के रूप में export होता है। अनुमानित टाइप Root नाम से export होता है।

JSON इनपुट

सीमाएँ: प्रति फ़ाइल 5 MiB या 5,242,880 अक्षर, 256 नेस्टिंग स्तर।

Zod स्कीमा

हर ऐरे का हर आइटम जाँचा जाता है: अलग-अलग टाइप z.union(...) बनते हैं, और कुछ ऑब्जेक्ट में न मिलने वाली कुंजियाँ .optional() बनती हैं। परिणाम को शुरुआत मानें और फ़ॉर्मैट, enum या सीमाओं से उसे सख़्त करें।

JSON to Zod क्या करता है

JSON to Zod नमूना JSON को Zod स्कीमा में बदलता है, जिसे आप TypeScript में रनटाइम वैलिडेशन के लिए उपयोग कर सकते हैं। JSON से पहले एक लाइब्रेरी-स्वतंत्र स्कीमा ट्री बनता है और फिर उससे Zod कोड तैयार होता है, जिसमें स्ट्रिंग, संख्या, बूलियन, null, नेस्टेड ऑब्जेक्ट, ऐरे और ऑब्जेक्ट वाले ऐरे शामिल हैं। डाउनलोड एक तैयार .ts मॉड्यूल है जिसमें import { z } from "zod", export किया गया स्कीमा और z.infer से बना export टाइप होता है।

उपयोग कैसे करें
  1. 1.नमूना JSON पेस्ट करें, .json फ़ाइल अपलोड करें, फ़ाइल को एडिटर पर छोड़ें या उदाहरण लोड करें।
  2. 2.रूट स्कीमा का नाम रखें, जैसे UserSchema; export होने वाला टाइप User होगा।
  3. 3.बना हुआ कोड और अनिश्चित टाइप से जुड़ी सूचनाएँ देखें।
  4. 4.कोड कॉपी करें या .ts फ़ाइल के रूप में डाउनलोड करें। साफ़ करें एडिटर खाली करता है।
टाइप का अनुमान कैसे लगता है
  • •हर ऐरे का हर आइटम जाँचा जाता है, केवल पहला नहीं। अलग-अलग प्रकार के आइटम z.union([...]) बनते हैं।
  • •एक ही ऐरे के ऑब्जेक्ट मिलाए जाते हैं: कुछ ऑब्जेक्ट में न मिलने वाली कुंजी .optional() बनती है, और कभी-कभी null होने वाली कुंजी z.null() के साथ union बनती है।
  • •खाली ऐरे से कोई जानकारी नहीं मिलती, इसलिए उसके आइटम z.unknown() होते हैं और सूचना दिखती है।
  • •जो मान हमेशा null है वह सूचना के साथ z.null() रहता है, क्योंकि नमूने से असली टाइप पता नहीं चल सकता।
  • •कुंजियाँ हमेशा उद्धरण में लिखी जाती हैं, इसलिए "user-id" या "__proto__" जैसे नाम सुरक्षित रहते हैं।
सीमाएँ और सटीकता

नमूना बताता है कि डेटा एक बार कैसा था, पूरा अनुबंध नहीं। जहाँ आपका API गारंटी देता है वहाँ फ़ॉर्मैट (email, url, datetime), enum, min/max या .strict() खुद जोड़ें। JavaScript की सुरक्षित सीमा से बड़े पूर्णांक चिह्नित किए जाते हैं क्योंकि पार्स करने पर उनकी सटीकता घटती है। इनपुट 5 MiB और 256 नेस्टिंग स्तर तक सीमित है, और सब कुछ आपके ब्राउज़र में चलता है।

CodingTool अब आधिकारिक तौर पर उपलब्ध है

Launched on StartupBaseCodingTool.dev - Free, Fast & Easy Developer Tools in One Place | Product HuntCodingTool - Featured on Startup FameFazier badgeListed on Turbo0Featured on Twelve ToolsFeatured on Findly.tools