JSON till Zod-schema
Generera ett Zod-valideringsschema och TypeScript-typer från ett JSON-exempel, med format- och enum-detektering.
JSON till Zod-schema
Klistra in ett JSON-exempel — ett API-svar, en konfigurationsfil, en databasrad — och få ett färdigt Zod-schema i TypeScript. Typer härledas för varje fält: primitiva typer mappas till z.string(), z.number() och z.boolean(), arrayfält får den härledda elementtypen, och ett värde som skiljer sig mellan förekomster blir en z.union(). En sträng som ser ut som en e-postadress, URL, UUID eller ISO-datum får den matchande validatorn — .email(), .url(), .uuid(), .date() eller .datetime() — istället för en enkel z.string().
Ge det en array av likformade objekt, som rader från en listslutpunkt, och generatorn slår samman varje element innan fältet typas: en nyckel som saknas i vissa rader blir .optional(), en nyckel som ibland är null blir .nullable() eller .optional() beroende på den valda inställningen, och ett fält som upprepar en liten uppsättning värden — en status- eller rollkolumn — blir ett korrekt z.enum() istället för en öppen sträng. Slå på ”Dela upp kapslade objekt” för att dra ut varje kapslat objekt till sitt eget namngivna export istället för en djupt kapslad literal. Slå på ”Strikta objekt” för att avvisa alla nycklar som exemplet aldrig visade — användbart för att fånga stavfel och oväntade API-fält vid parsning istället för senare i flödet.
Namnge det exporterade schemat så som din kod förväntar sig det, och lägg eventuellt till export type X = z.infer<typeof X> direkt under det, så att körningsvalidatorn och compile-tidtypen kommer från samma källa och aldrig kan glida iväg från varandra i det fördolda.
Allt körs lokalt i din webbläsare. Det JSON som du klistrar in — API-svar som innehåller tokens, användarrecord, interna nyttolaster — tolkas och typas helt på din enhet och laddas aldrig upp någonstans. Klistra in ett exempel, kopiera det genererade schemat till ditt projekt och börja validera vad du tolkar.