← All roadmapsView interactive roadmap on roadmap.sh
TypeScript
Everything you need to learn about TypeScript in @currentYear@
0%
0 done0 learning0 target
Your learning path
Introduction to TypeScript
Introduction to TypeScript
TS and JS Interoperability
TypeScript vs JavaScript
Installation and Configuration
Running TypeScript
tsconfig.json
tsconfig.json
Compiler Options
Compiler Options
tsc
tsc
ts-node
ts-node
TS Playground
TS Playground
TypeScript Types
TypeScript Types
boolean
boolean
number
number
string
string
void
void
undefined
undefined
null
null
Interface
Interface
Class
Class
Enum
Enum
Array
Array
Tuple
Tuple
Object
Object
unknown
unknown
any
any
never
never
as const
as const
as [type]
as [type]
as any
as any
Non-null Assertion
Non-null Assertion
satisfies keyword
satisfies keyword
Type Inference
Type Inference
Type Compatibility
Type Compatibility
Combining Types
Combining Types
Union Types
Union Types
Intersection Types
Intersection Types
Type Aliases
Type Aliases
keyof Operator
keyof Operator
Type Guards / Narrowing
Type Guards / Narrowing
Equality
instanceof
typeof
Truthiness
Type Predicates
TypeScript Functions
TypeScript Functions
Typing Functions
Function Overloading
Function Overloading
TypeScript Interfaces
TypeScript Interfaces
Types vs Interfaces
Extending Interfaces
Interface Declaration
Hybrid Types
Classes
Classes
Constructor Params
Constructor Params
Constructor Overloading
Constructor Overloading
Access Modifiers
Access Modifiers
Abstract Classes
Abstract Classes
Inheritance vs Polymorphism
Inheritance vs Polymorphism
Method Overriding
Method Overriding
Generics
Generics
Generic Types
Generic Constraints
Decorators
Decorators
Utility Types
Utility Types
Pick
Readonly
Exclude
Awaited
Parameters
NonNullable
ReturnType
InstanceType
Partial
Partial
Omit
Omit
Record
Record
Extract
Extract
Advanced Types
Advanced Types
Mapped Types
Conditional Types
Conditional Types
Literal Types
Literal Types
Template Literal Types
Template Literal Types
Recursive Types
Recursive Types
TypeScript Modules
TypeScript Modules
Global Augmentation
Namespaces
Namespaces
Ambient Modules
Ambient Modules
External Modules
External Modules
Namespace Augmentation
Namespace Augmentation
Ecosystem
Ecosystem
Formatting
Linting
Useful Packages
Build Tools