Skip to main content
00:00/00:00
Lecture 177 of 226

Validating-API-Responses-via-Zod

Download Course (Free)

Course Content

0 / 226 completed
Section 1: Course Curriculum226 videos

Exercise-typeof

1m

Who-is-the-course-for-and-prerequisites

2m

Narrowing-via-typeof-Type-Guard

1m

Intro-to-Type-Narrowing

5m

Welcome

2m

Narrowing-via-Truthiness

2m

What-will-you-learn-in-this-course

9m

Exercise-Narrowing-via-Truthiness

1m

Answers-Narrowing-via-Truthiness

1m

Narrowing-via-Equality-Checking

1m

Answers-typeof

1m

Exercise-Narrowing-via-Equality-Checking

1m

Answers-Narrowing-via-Equality-Checking

1m

Narrowing-via-the-in-Operator

2m

Exercise-Narrowing-via-the-in-Operator

1m

Answer-Narrowing-via-the-in-Operator

1m

Narrowing-via-instanceOf

1m

Exercise-Narrowing-via-instanceOf

1m

Exercise-Narrowing-via-Control-Flow

1m

Narrowing-via-Control-Flow

1m

Answers-Narrowing-via-instanceOf

1m

Answers-Narrowing-via-Control-Flow

1m

Exercise-Narrowing-via-a-Type-Predicate

1m

Narrowing-via-a-Type-Predicate

3m

Answers-Narrowing-via-a-Discriminated-Union

1m

Exercise-Narrowing-via-a-Discriminated-Union

1m

Answers-Narrowing-via-a-Type-Predicate

2m

Narrowing-via-a-Discriminated-Union

2m

Narrowing-via-an-Assertion-Function

1m

Exercise-Narrowing-via-an-Assertion-Function

1m

Exercise-Narrowing-via-Exhaustiveness-Checking

1m

Answers-Narrowing-via-an-Assertion-Function

1m

Answers-Narrowing-via-Exhaustiveness-Checking

1m

Narrowing-via-Exhaustiveness-Checking

3m

Exercise-Narrowing-via-satisfies

1m

Narrowing-via-satisfies

5m

Answer-Narrowing-via-satisfies

1m

Exercise-Narrowing-via-a-Type-Assertion

1m

Narrowing-via-a-Type-Assertion

4m

Answer-Narrowing-via-a-Type-Assertion

2m

Narrowing-via-a-Non-null-Assertion

3m

Exercise-Narrowing-via-a-Non-null-Assertion

1m

Answers-Narrowing-via-a-Non-null-Assertion

1m

Exercise-Typing-this

1m

Answers-Typing-this

1m

Typing-this

8m

Summary

4m

Pick-and-Omit

2m

Exercise-Pick-and-Omit

1m

Answers-Pick-and-Omit

1m

Intro-to-Utility-Types

3m

Exercise-Partial

1m

Answers-Partial

2m

Exercise-Required

1m

Required

1m

Answers-Required

1m

Partial

3m

Exercise-Readonly-and-ReadonlyArray

1m

Answers-Readonly-and-ReadonlyArray

1m

Exercise-Exclude

1m

Exclude

1m

Answers-Exclude

1m

Exercise-Extract

1m

Readonly-and-ReadonlyArray

1m

Answers-Extract

1m

String-Manipulation-Utilities

2m

Exercise-String-Manipulation-Utilities

1m

Answers-String-Manipulation-Utilities

1m

Built-in-Utility-Types-Summary

2m

Other-Built-in-Utility-Types

7m

Exercise-Implementing-Generics

1m

Third-Party-Utility-Types

3m

Intro-to-Implementing-Generics

13m

Generic-Function-Types

2m

Answers-Implementing-Generics

3m

Answers-Generic-Function-Types

1m

Generic-Interfaces

4m

Answers-Generic-Interfaces

1m

Exercise-Generic-Interfaces

1m

Generic-Classes

1m

Answers-Generic-Classes

1m

Exercise-Generic-Classes

1m

Generic-Constraints-via-Extends

9m

Exercise-Generic-Constraints-via-Extends

2m

Answers-Generic-Constraints-via-Extends

5m

Const-Modifier

4m

Exercise-Const-Modifier

1m

Exercise-Generic-Function-Types

1m

Answers-Const-Modifier

1m

Default-Type-Arguments

6m

Exercise-Default-Type-Arguments

1m

Answers-Default-Type-Arguments

3m

Exercise-Pushing-Type-Params-Down

1m

Answers-Pushing-Type-Params-Down

1m

Generics-Best-Practices

4m

Exercise-Eliminating-Needless-Type-Arguments

1m

Exercise-Implement-a-Mapped-Type

1m

Intro-to-Mapped-Types

6m

Answers-Implement-a-Mapped-Type

1m

Answers-Eliminating-Needless-Type-Arguments

1m

Exercise-Template-Literal-Types

1m

Template-Literal-Types

5m

Answers-Template-Literal-Types

1m

keyof

5m

Pushing-Type-Params-Down

4m

Exercise-keyof

1m

Answers-keyof

1m

Exericse-typeof

1m

Answers-typeof- 2

2m

Indexed-Access

9m

typeof

3m

Exercise-Indexed-Access

1m

Answers-Indexed-Access

3m

Exercise-Conditional-Types

1m

Conditional-Types

7m

Extract

1m

Exercise-infer

1m

Answers-Conditional-Types

3m

infer

11m

Answers-infer

2m

Exercise-Looping-via-the-in-Operator

1m

Looping-via-the-in-Operator

8m

Answers-Looping-via-the-in-Operator

2m

Exercise-Remapping-Properties-via-as

1m

Remapping-Properties-via-as

7m

Recursion-in-Mapped-Types

2m

Answers-Remapping-Properties-via-as

1m

Exercise-Recursion-in-Mapped-Types

1m

Answers-Recursion-in-Mapped-Types

2m

JS-vs-TS-Syntax-Comparision

4m

Intro-to-Utility-Types- 2

3m

Exercise-MyPartial

1m

Answers-MyPartial

1m

Exercise-MyRequired

1m

Answers-MyRequired

1m

Answers-MyReadonly

1m

Exercise-MyPick

1m

Answers-MyPick

1m

Exercise-MyRecord

1m

Exercise-MyReadonly

1m

Answers-MyRecord

2m

Exercise-MyExclude

1m

Answers-MyExclude

1m

Exercise-MyOmit

1m

Exercise-MyExtract

1m

Answers-MyExtract

1m

Exercise-MyNonNullable

1m

Exercise-RecursivePartial

1m

Answers-MyNonNullable

2m

Answers-RecursivePartial

1m

Intro-to-Runtime-Validation

7m

Exercise-Declaring-Zod-Schemas

1m

Declaring-Zod-Schemas

6m

Answers-Declaring-Zod-Schemas

1m

Nullable-and-Optional

1m

Zod-Utility-Types

1m

Implementing-Custom-Validation-via-Refine

1m

Validating-URL-Params-via-Zod

5m

Validating-at-Runtime-in-Web-Apps

7m

Answers-MyOmit

1m

Validating-localStorage-via-Zod

2m

Validating-a-File-via-Zod

3m

Validating-Environment-Variables-via-Zod

2m

Suggested-Next-Steps

3m

Understanding-Decorator-Implementations

5m

Validating-Forms-via-Zod

2m

Intro-to-Decorators

9m

Context-Parameter

3m

Typing-Decorators-and-Invocation-Order

4m

Decorating-Methods

6m

Exercise-Decorating-Methods

1m

Answers-Decorating-Methods

1m

Decorating-Getters-and-Setters

6m

Exercise-Decorating-Getters-and-Setters

1m

Answers-Decorating-Getters-and-Setters

1m

Exercise-Decorating-Fields

1m

Validating-API-Responses-via-Zod

3mNow Playing

Decorating-Fields

1m

Answers-Decorating-Fields

1m

Answers-Decorating-Classes

1m

Exercise-Decorating-Classes

1m

Implementing-Universal-Decorators

3m

Decorating-Classes

2m

Accepting-Arguments-via-a-Decorator

5m

Exercise-Accepting-Arguments-via-a-Decorator

1m

Composing-Multiple-Decorators

1m

Answers-Accepting-Arguments-via-a-Decorator

1m

Exercise-Composing-Multiple-Decorators

1m

Answers-Composing-Multiple-Decorators

2m

Intro

2m

Decorator-Tradeoffs

5m

Exercise-Accepting-Random-Strings-via-Loose-Autocomplete

1m

Answer-Accepting-Random-Strings-via-Loose-Autocomplete

1m

Named-Tuples

2m

Exercise-Named-Tuples

1m

Accepting-Random-Strings-via-Loose-Autocomplete

2m

Type-only-Imports-and-Exports

9m

Answer-Named-Tuples

1m

Understanding-Optional-Keys-vs-Optional-Values

1m

Handling-Excess-Properties

3m

Typing-Object.keys

2m

Working-with-Evolving-anys

3m

Naming-Values-and-Types-the-Same

3m

Disabling-TypeScript-via-Comments

2m

Working-with-JS-Array-Methods

2m

Exercise-Simulating-Nominal-Types-via-Branded-Types

1m

Typing-Symbols

5m

Simulating-Nominal-Types-via-Branded-Types

12m

Answers-Simulating-Nominal-Types-via-Branded-Types

1m

Exercise-Testing-Types

1m

Testing-Types

7m

Answers-Testing-Types

1m

Answers-Using-JSDocs-to-Type-JS-Files

1m

Using-JSDocs-to-Type-JS-Files

12m

Intro-to-tsconfig-Settings

1m

Migrating-from-JavaScript-to-TypeScript

11m

Exercise-Using-JSDocs-to-Type-JS-Files

1m

Avoiding-Configuring-From-Scratch

9m

Configuring-TypeScript-for-the-Strictest-Settings

14m

Debugging-via-Sourcemaps

3m

Optimizing-for-Performance

10m

Intro- 2

1m

Typing-Errors-Effectively

6m

Linting-TypeScript

9m

Generating-Types

5m

Wrap-up-and-Next-Steps

3m