📘

TypeScript

Intermediate

Learn TypeScript - JavaScript with types for safer, more scalable code

30 Lessons
6 weeks

Course Lessons

1

Introduction to TypeScript

10 min

Learn what TypeScript is and why it matters

Beginner

Basic Types

12 min

Master TypeScript primitive types

BeginnerComplete previous lesson to unlock

Arrays and Tuples

15 min

Work with typed arrays and tuples

BeginnerComplete previous lesson to unlock

Objects and Interfaces

15 min

Define object shapes with interfaces

BeginnerComplete previous lesson to unlock

Functions with Types

15 min

Add types to function parameters and returns

BeginnerComplete previous lesson to unlock

Union and Literal Types

18 min

Use union types and literal values

IntermediateComplete previous lesson to unlock

Type Aliases

15 min

Create reusable type definitions

IntermediateComplete previous lesson to unlock

Enums

15 min

Define sets of named constants

IntermediateComplete previous lesson to unlock

Generics Basics

20 min

Create reusable, type-safe functions

IntermediateComplete previous lesson to unlock

Generic Interfaces

20 min

Create flexible interface definitions

IntermediateComplete previous lesson to unlock

Classes with Types

20 min

Add TypeScript to classes

IntermediateComplete previous lesson to unlock

Class Inheritance

20 min

Extend classes with proper typing

IntermediateComplete previous lesson to unlock

Implementing Interfaces

20 min

Use interfaces with classes

IntermediateComplete previous lesson to unlock

Type Assertions

15 min

Tell TypeScript about types you know

IntermediateComplete previous lesson to unlock

Utility Types - Partial & Required

18 min

Use built-in utility types

IntermediateComplete previous lesson to unlock

Utility Types - Pick & Omit

18 min

Select or exclude properties from types

IntermediateComplete previous lesson to unlock

Utility Types - Record & Readonly

18 min

Create mapped and immutable types

IntermediateComplete previous lesson to unlock

Type Guards

20 min

Narrow types with runtime checks

AdvancedComplete previous lesson to unlock

Discriminated Unions

22 min

Pattern match with tagged unions

AdvancedComplete previous lesson to unlock

Mapped Types

25 min

Transform types programmatically

AdvancedComplete previous lesson to unlock

Conditional Types

25 min

Types that depend on conditions

AdvancedComplete previous lesson to unlock

Template Literal Types

20 min

Create types from string templates

AdvancedComplete previous lesson to unlock

Index Signatures

18 min

Define dynamic property types

IntermediateComplete previous lesson to unlock

Decorators

25 min

Metaprogramming with decorators

AdvancedComplete previous lesson to unlock

Modules and Namespaces

20 min

Organize code with modules

IntermediateComplete previous lesson to unlock

Type Declaration Files

20 min

Work with .d.ts files

AdvancedComplete previous lesson to unlock

Advanced Generics - Constraints

22 min

Constrain generic types

AdvancedComplete previous lesson to unlock

Infer Keyword

25 min

Extract types from other types

AdvancedComplete previous lesson to unlock

TypeScript with React

25 min

Type React components and hooks

AdvancedComplete previous lesson to unlock

PROJECT: Type-Safe API Client

45 min

Build a fully typed API client

AdvancedComplete previous lesson to unlock