TypeScript
Full TypeScript course — 39 topics from the basics to advanced use.
Lessons
- JavaScript Foundations for TypeScript and React
- What Is TypeScript and How Do You Use It?
- TypeScript's Built-in Types: A Complete Reference
- Type Inference, Widening, Narrowing, and satisfies
- Typing Arrays and Tuples
- Object Types: Literals, Optional/Readonly Properties, and Index Signatures
- Type Aliases: Naming Unions, Intersections, Functions, and Generics
- Interfaces: Methods, Extension, Declaration Merging, and Choosing Interface vs Type
- Union and Intersection Types: Combining, Narrowing, and Domain Modeling
- Literal Types: Exact Values, Widening, and `as const`
- Enums: Numeric, String, and Const
- Typing Functions: Parameters, Returns, and Overloads
- Type Narrowing and Control-Flow Analysis
- Type Assertions: as, Non-Null (!), and Their Risks
- Generics: Functions, Types, Interfaces, and Classes
- Reading Types From Values: keyof, typeof, and Indexed Access
- Conditional Types: Branching Logic at the Type Level
- Mapped Types: Transforming Every Property at Once
- Template Literal Types and String Manipulation
- Utility Types: Shaping Objects (Part 1)
- Utility Types: Functions and Advanced Utilities (Part 2)
- Discriminated Unions: Tagged State and Exhaustiveness
- Type System Design: Structural Typing, Variance, and Branding
- Advanced Type Manipulation: Core Techniques (Part 1)
- Advanced Type Manipulation: Recursive and Branded Types (Part 2)
- Classes in Depth: Members, Modifiers, Statics, Abstracts, and Decorators
- Object-Oriented Design in TypeScript: Principles and Practice
- ES Modules: Imports, Exports, and Module Boundaries
- .d.ts Files, Ambient Declarations, and Module Augmentation
- Typing the DOM: Elements, Events, and Safe Narrowing
- Promises, async/await, and Safe Concurrency Patterns
- JSON, DTOs, and Runtime Validation for API Types
- tsconfig in Depth: Core Compiler Options (Part 1)
- tsconfig in Depth: Paths, Emit, and Project References (Part 2)
- Publishing and Consuming TypeScript Packages with npm
- The TypeScript Toolchain: tsc, Bundlers, Linters, and Editors
- Designing Robust, Maintainable TypeScript Code
- Debugging TypeScript: Reading Errors and Tracing Root Causes
- Building a Type-Safe Engineering Calculator