Tool
TypeScript
JavaScript with a type system
Master TypeScript from simple types to generics, utility and mapped types, strict null handling, declaration files and real-world project practice.
16
Chapters
41
Hours (estimated)
1
Self-paced
Part-time
About 14 weeks
1 hour a day, 3 days a week
Full-time
About 5 weeks
3 hours a day, 3 days a week
Estimated from 16 chapters (notes, practice, labs, quiz, exercise, and challenge) plus the final exam. Go at your own pace.
Curriculum
16 chapters, each with a tutorial, a live example, a quiz, an exercise, a challenge, and class practice.
- 1
Introduction to TypeScript
What TypeScript is, why teams adopt it, how compilation works, installing tsc, and your first typed program.
- 2
Simple & Special Types
string, number, boolean, bigint, type inference, explicit vs implicit typing, and the special types any, unknown, never, void, null and undefined.
- 3
Arrays & Tuples
Typed arrays, readonly arrays, array methods with types, tuples for fixed-length data, named and optional tuple elements, and destructuring.
- 4
Object Types & Type Aliases
Describing object shapes inline, optional and readonly properties, index signatures, type aliases, and excess property checks.
- 5
Interfaces
Declaring object contracts with interface, extending interfaces, declaration merging, interfaces for functions, and when to use interface vs type.
- 6
Enums & Literal Types
Numeric and string enums, const enums, literal types and as const as lighter alternatives, and choosing between them.
- 7
Union, Intersection & Literal Types
Combining types with | and &, literal types, discriminated unions, and exhaustive checks with never.
- 8
Functions & Types
Typing parameters and return values, optional, default and rest parameters, function type aliases, callbacks, and overloads.
- 9
Type Narrowing & Casting
typeof, instanceof, in, equality and truthiness narrowing, type predicates, assertion functions, and casting with as — plus when casting is dangerous.
- 10
Classes & Access Modifiers
Typed class properties, constructors and parameter properties, public/private/protected, readonly, getters/setters, implements, inheritance and abstract classes.
- 11
Generics
Writing reusable type-safe functions, interfaces and classes with type parameters, constraints with extends, defaults, and generic utility patterns.
- 12
Utility Types
The built-in type helpers — Partial, Required, Readonly, Pick, Omit, Record, Exclude, Extract, NonNullable, ReturnType, Parameters and Awaited — with real use cases.
- 13
keyof, typeof, Indexed & Mapped Types
Getting keys with keyof, types from values with typeof, indexed access types, mapped types, template literal types, and conditional types in practice.
- 14
Null, Undefined & Strict Mode
strictNullChecks, optional chaining, nullish coalescing, the non-null assertion, definite assignment, and handling missing data safely.
- 15
Modules, tsconfig & Declaration Files
import/export with types, type-only imports, tsconfig.json essentials, declaration files (.d.ts), DefinitelyTyped (@types), and typing JavaScript libraries.
- 16
TypeScript in Real Projects
Typing async code and API calls, runtime validation with zod, TypeScript with React and Node/Express, migrating JavaScript, linting, and team best practices.
TypeScript is free to study, self-paced. Pass the final exam to earn an optional Certificate of Completion for $40.