TypeScriptBeginner
TypeScript Essentials
Add types to JavaScript: write TypeScript and actually run it in your browser.
18 chapters68 lessons65 challenges
Course curriculum
Chapter 1: From JavaScript to TypeScript
- ▸What is TypeScript
- ▸Annotating types
- ▸any and unknown
Chapter 2: Typed functions
- ▸Typed functions
- ▸Optional and default parameters
- ▸Functions as a type
- ▸Rest parameters and overloads
Chapter 3: Objects, interface and type
- ▸Interface: the shape of objects
- ▸type, optional and readonly
- ▸Extending interfaces
- ▸Index signatures
Chapter 4: Union, narrowing and literal types
- ▸Union types and narrowing
- ▸Literal types
- ▸Advanced narrowing
- ▸null, undefined and optional chaining
Chapter 5: Generics
- ▸Generics: reusable code
- ▸Constraints
- ▸Generics in interfaces and types
- ▸Defaults and multiple parameters
Chapter 6: Utility types
- ▸Utility types: transforming types
- ▸Pick, Omit, Record
- ▸More utility types
- ▸Utilities on functions
Chapter 7: Classes in TypeScript
- ▸Classes and modifiers
- ▸Inheritance, abstract and implements
- ▸Getters, setters and static
- ▸Generic classes
Chapter 8: Mapped types
- ▸Mapped types
- ▸keyof and indexed access
- ▸Modifiers in mapped types
- ▸Key remapping with as
Chapter 9: Conditional types and infer
- ▸Conditional types
- ▸infer: extracting a type
- ▸Distributive conditionals
- ▸infer in multiple positions
Chapter 10: Template literal types
- ▸Template literal types
- ▸Putting types together
- ▸Transforming strings
- ▸Patterns with keys
Chapter 11: Typed async
- ▸Typed Promises and async/await
- ▸Multiple Promises and errors
- ▸Typing external data
- ▸Typed errors
Chapter 12: tsconfig and strictness
- ▸tsconfig.json
- ▸strict mode
- ▸Modules: import and export
- ▸Type-only imports and .d.ts
Chapter 13: Patterns and best practices
- ▸Discriminated unions
- ▸Exhaustiveness with never
- ▸The satisfies operator
- ▸Avoiding any
Chapter 14: Type Challenges
Chapter 15: Decorators and metadata
- ▸What a decorator is
- ▸Class decorators
- ▸Method decorators
- ▸Field and accessor decorators
Chapter 16: Declaration files and merging
- ▸Declaration files and declare
- ▸Declaration merging
- ▸Function and namespace merging
- ▸Module and global augmentation
Chapter 17: Advanced type-level programming
- ▸Recursive types
- ▸Variadic tuple types
- ▸Branded types
- ▸Key remapping with as
Chapter 18: Senior TypeScript
- ▸The satisfies operator
- ▸const type parameters and as const
- ▸Type-only imports and isolatedModules
- ▸Type performance and project references
Ready to level up?
Create a free account and start now: earn XP on every challenge and climb the leaderboard.