Limited Period Offer : 20% Discount on online/offline courses, for more details call/whatsapp

Establishing Validation by Converting TypeScript Code to Zod Schemas

0 min read
2 years ago By Mitali Gupta
Establishing Validation by Converting TypeScript Code to Zod Schemas

Data validation plays a crucial role in software development to ensure data integrity and prevent errors. In this article, we will explore the process of converting TypeScript code to Zod schemas to establish effective data validation. By leveraging Zod's powerful validation capabilities.

  • Install Zod:
  npm install zod

or

  yarn add zod
  • .Import zod :
import { z } from 'zod';
  • Convert TypeScript Types to Zod Schemas:
import * as z from 'zod';

type Status = 'active' | 'inactive';

const statusSchema = z.union([z.literal('active'), z.literal('inactive')]);
//  Typescript type
interface User {
  name: string;
  age: number;
  status: Status;
  email?: string;
}

// Zod Schema
const userSchema = z.object({
  name: z.string(),
  age: z.number(),
  status: statusSchema,
  email: z.string().optional(),
});

  • Define Validation Rules:
import * as z from 'zod';

const statusSchema = z.union([z.literal('active'), z.literal('inactive')]);

const userSchema = z.object({
  name: z.string(),
  age: z.number(),
  status: statusSchema,
  email: z.string().optional(),
});
  • Validate data :
const userData = {
  name: 'Mohan',
  age: 25,
  status: 'active',
  email: 'mohan@example.com',
};

try {
  const validatedData = userSchema.parse(userData);
  console.log(validatedData); // Validated data
} catch (error) {
  if (error instanceof z.ZodError) {
    console.error(error.errors); // Validation errors
  } else {
    console.error('An error occurred during validation.');
  }
}


Jun 21, 2023 12:00 Back to Articles

Other Articles

Top 10 Web Frameworks of 2023 Top 10 Web Frameworks of 2023

As technology evolves and new trends arise, the landscape of web frameworks is continually shifting. This article will present the top 10 web frameworks to consider in 2023.

2 years ago By Mitali Gupta
React State Management Made Easy: Zustand and Redux Explained React State Management Made Easy: Zustand and Redux Explained

In this article, we will discover two powerful state management libraries for React: Zustand and Redux. Also explore their unique approaches, advantages, and use cases, to simplify and optimize your application's state handling. Choose the best fit for your project's needs and boost development efficiency with these popular solutions.

2 years ago By Mitali Gupta
Best Websites for Building Resumes

In this article, we will explore five top websites that can assist you in crafting a compelling resume to increase your chances of getting shortlisted by companies.

2 years ago By Mitali Gupta
How to use and upload profile photos to AWS s3 using laravel jetstream

Using jetsream to upload photos to s3 configuration and details

2 years ago By Santosh Kshirsagar