open atlas

typescript

TypeScript type system, deep

From structural typing to type-level programming — generics, conditional and mapped types, and typing real systems.

10 units·41 lessons·~10 h

Start track
00

Start from zero

What types buy you, and the two worlds: values and types.
01

Foundations

TypeScript types are structural and mostly inferred.
02

Everyday types

Unions plus narrowing model 'one of these, figure out which'.
03

Generics

Generics are functions over types — with constraints and inference.
04

The type system, deep

Conditional, mapped and template-literal types make types programmable.
05

Type-level programming

Recursion and distribution let you compute at the type level — within limits.
06

Functions & this

Overloads, this-typing, assertion functions and satisfies.
07

Config, modules & build

tsconfig strictness and module resolution decide what compiles.
08

Types in the real world

Type the boundaries: APIs, validation, end-to-end with tRPC.
09

Putting it together

Build a fully-typed feature end to end.

Build with this track

Guided projects that exercise what you learn here.

Next track

System Design Foundations

The building blocks of large systems and the interview framework — scaling, availability, data distribution, caching, async, and reasoning about tradeoffs under load.