Learn TypeScript
Structured lessons from the basics up — follow the path below in order, at your own pace.
-
1
Level 1 — Beginner Beginner 20 lessons
This course assumes you already know basic JavaScript — variables, functions, if/loops, arrays and objects. If any of that is new, work thro...
Lessons in this module
What Is TypeScript? Why Learn TypeScript? Installing TypeScript Setting Up Your Development Environment Your First TypeScript Program Compiling TypeScript with tsc Basic Types Type Annotations Type Inference Arrays and Tuples Objects and Type Shapes Interfaces Functions with Types Optional and Default Parameters Union Types Literal Types Enums Type Aliases any, unknown, and never Basic Error Handling with Types -
2
Beginner Projects Beginner 1 lesson
Build these using only what Level 1 covered — basic types, interfaces, and typed functions. Each is small enough to finish in under an hour....
-
3
Level 2 — Intermediate Intermediate 14 lessons
Once the basic type system feels comfortable, these lessons cover how TypeScript is actually used in real projects — classes, generics, and...
Lessons in this module
Interfaces vs. Type Aliases Classes with Types Access Modifiers Generics Type Guards and Narrowing Intersection Types Working with Third-Party JavaScript tsconfig.json in Depth Modules in TypeScript Utility Types Working with APIs and Typed Fetch Testing TypeScript Debugging TypeScript Configuring Strict Mode -
4
Intermediate Projects Intermediate 1 lesson
Prerequisites: Level 2 — Intermediate. Typed REST API Client A small module wrapping fetch calls to a public API, with interfaces for every...
-
5
Level 3 — Advanced Advanced 17 lessons
These lessons cover TypeScript's advanced type level features and how to apply TypeScript across a large, real world codebase.
Lessons in this module
Advanced Generics Conditional Types Mapped Types Template Literal Types Decorators Declaration Files Module Augmentation Design Patterns in TypeScript Architecture for Large TypeScript Projects Performance and Build Tooling Security Testing Strategies Package and Library Design Migrating a JavaScript Codebase to TypeScript Monorepos and Project References Production Deployment and CI/CD Advanced Debugging -
6
Advanced Projects Advanced 1 lesson
Prerequisites: Level 3 — Advanced. Convert a JavaScript Project to TypeScript Take one of your own earlier JavaScript projects and migrate i...
-
7
What You Should Know Now — and What's Next 1 lesson
What You Should Know Now The type system: annotations, inference, unions, literal types, enums Interfaces, type aliases, and when to reach f...