TypeScript.
Static typing for JavaScript — annotations, interfaces, generics, utility types, and advanced type patterns.
Beginner
Start here — no prior experience needed
Setting Up TypeScript
Install the TypeScript compiler, configure tsconfig.json, use ts-node for development, and set up VS Code for the best TypeScript experience.
Basic Types in TypeScript
Master TypeScript's built-in types: string, number, boolean, null, undefined, any, unknown, never, and void — with practical usage guidance.
Variables in TypeScript
Learn let and const, type annotations, type inference, and how strict mode changes variable declarations in TypeScript.
Functions in TypeScript
Type function parameters, return values, optional and default parameters, overloads, and generics in TypeScript functions.
Interfaces in TypeScript
Define object shapes with interfaces, extend and merge them, use readonly and optional properties, and understand when to use interface vs type.
Introduction to TypeScript
Understand what TypeScript is, why it exists, how it differs from JavaScript, and where it fits in the modern web ecosystem.
Intermediate
For developers with core concepts down
Type Aliases in TypeScript
Use the type keyword to create unions, intersections, discriminated unions, and mapped types for expressive and reusable TypeScript code.
Classes in TypeScript
Use access modifiers, abstract classes, parameter properties, and interface implementation to write well-structured object-oriented TypeScript.
Generics in TypeScript
Write reusable, type-safe code with generic functions, classes, constraints, conditional types, and the infer keyword.
Utility Types in TypeScript
Master TypeScript's built-in utility types: Partial, Required, Readonly, Pick, Omit, Record, ReturnType, Awaited, and more.
Modules and Declaration Files in TypeScript
Understand TypeScript modules, namespaces, .d.ts declaration files, and ambient declarations for typing third-party JavaScript.
Error Handling in TypeScript
Build robust error handling with Result types, exhaustive checks, type guards, and assertion functions in TypeScript.
Async TypeScript
Type Promises, async/await, fetch calls, error handling patterns, and concurrent async operations in TypeScript.
Testing TypeScript
Set up Jest with TypeScript using ts-jest, write typed mocks, and perform type-level testing with expect-type and tsd.
Design Patterns in TypeScript
Implement classic design patterns — Singleton, Factory, Builder, and Strategy — with full type safety in TypeScript.
React with TypeScript
Type React components, hooks, events, context, and generic components for production-quality React TypeScript applications.
Node.js with TypeScript
Build Express APIs with TypeScript: typed middleware, request/response types, typed environment variables, and project setup.
TypeScript Interview Prep
Top 30 TypeScript interview questions and answers covering types, generics, advanced patterns, and real-world usage.
Advanced
Production-grade patterns for experienced engineers
Advanced Types in TypeScript
Explore template literal types, recursive types, variance, and the satisfies operator for precise, expressive TypeScript type definitions.
Decorators in TypeScript
Use class, method, property, and parameter decorators to add reusable cross-cutting behavior with TypeScript's decorator system.
TypeScript Performance
Speed up tsc compile times with Project References, incremental builds, type-level optimizations, and profiling slow type checks.