TypeScript · JavaScript with types, checked before it runs
Learn TypeScript properly,
from your first type to TypeScript 7.
Start from why TypeScript exists: you need only some JavaScript, and every word is explained in plain English. You will learn annotations and inference, functions, objects and interfaces, unions and narrowing, enums and tuples, classes and decorators, generics, keyof, mapped, conditional and template literal types, utility types and type-level patterns, modules and declaration files, every important tsconfig option, TypeScript with the DOM and with React, real project tooling, and how the checker thinks. Every example is checked by the real TypeScript compiler in your browser and verified against TypeScript 7, so the errors you see are exactly what tsc prints, and every phase ends with exercises the compiler checks for you.
- Phases
- 18
- Topics
- 109
- Hours
- 44
- Diagrams
- 100
- Exercises
- 720
By the end you can
What this course makes you able to do
- Type everyday JavaScript: values, functions, objects, arrays and classes, and read every tsc error
- Model data with unions, discriminated unions and narrowing so impossible states can't be written
- Write generic functions and types, and build your own utility types with keyof, mapped, conditional and template literal types
- Set up real projects: tsconfig and strictness, modules and declaration files, Node, Vite and TypeScript 7
- Type the DOM, async code, API data and React components safely
- Answer advanced TypeScript interview questions and solve type challenges live
Beginner → Advanced
The curriculum, by level
- 6Classes and Object-Oriented TypeScript8 topics · ~3 h
- 7Generics7 topics · ~3 h
- 8Type Operators5 topics · ~2 h
- 11Modules and Declaration Files6 topics · ~2 h
- 12The Compiler and tsconfig6 topics · ~2 h
- 13TypeScript in the Browser: DOM and Async6 topics · ~2 h
- 14TypeScript with React6 topics · ~2 h
- 15TypeScript in Real Projects6 topics · ~3 h
Where should I start?
Pick a path for your goal
Complete beginner
You know some JavaScript and no TypeScript. Start here: every word is explained.
Job-ready TypeScript developer
You can type basic code and want what teams expect day to day.
Advanced types and interviews
You use TypeScript daily and want type-level skills and interview depth.
Helpful before this course