← Back to Tools
TypeScript

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. 1

    Introduction to TypeScript

    What TypeScript is, why teams adopt it, how compilation works, installing tsc, and your first typed program.

  2. 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. 3

    Arrays & Tuples

    Typed arrays, readonly arrays, array methods with types, tuples for fixed-length data, named and optional tuple elements, and destructuring.

  4. 4

    Object Types & Type Aliases

    Describing object shapes inline, optional and readonly properties, index signatures, type aliases, and excess property checks.

  5. 5

    Interfaces

    Declaring object contracts with interface, extending interfaces, declaration merging, interfaces for functions, and when to use interface vs type.

  6. 6

    Enums & Literal Types

    Numeric and string enums, const enums, literal types and as const as lighter alternatives, and choosing between them.

  7. 7

    Union, Intersection & Literal Types

    Combining types with | and &, literal types, discriminated unions, and exhaustive checks with never.

  8. 8

    Functions & Types

    Typing parameters and return values, optional, default and rest parameters, function type aliases, callbacks, and overloads.

  9. 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. 10

    Classes & Access Modifiers

    Typed class properties, constructors and parameter properties, public/private/protected, readonly, getters/setters, implements, inheritance and abstract classes.

  11. 11

    Generics

    Writing reusable type-safe functions, interfaces and classes with type parameters, constraints with extends, defaults, and generic utility patterns.

  12. 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. 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. 14

    Null, Undefined & Strict Mode

    strictNullChecks, optional chaining, nullish coalescing, the non-null assertion, definite assignment, and handling missing data safely.

  15. 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. 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.

Start learning — it's free →

TypeScript is free to study, self-paced. Pass the final exam to earn an optional Certificate of Completion for $40.