Skip to content

TYPESCRIPT · FROM FIRST TYPES TO WORKING APPLICATIONS

Write clearer JavaScript.
Build with TypeScript.

A complete practical learning path through types, functions, generics, modules, browser code and runtime validation. Finish with a tested task manager that saves your work.

24 guided lessons24 source downloads1 complete browser project

Start with JavaScript basics

Know variables, loops, functions, arrays and objects. Use Node.js 22 or 24, npm and a code editor. The setup lesson works on macOS, Windows and Linux.

Every checkpoint pins TypeScript 5.9.3 and enables strict checking. You do not need a frontend framework or a global compiler installation.

Practice every concept

Read the explanation, trace the source, predict the result and run the example. Each lesson includes complete files, expected output and an independent exercise with an explained answer.

Extract each ZIP into a separate folder. Run npm install, npm run check and npm run build before following that lesson’s run instructions.

Your complete course workspace

Download all 24 checkpoints with offline explanations, or try the finished browser task manager before building it yourself.

The demo saves tasks only in this browser. It requires no account and does not sync across devices.

03

COURSE MODULE

Reusable types

  1. 09

    Generics and constraints

    Preserve relationships between input and output types.

  2. 10

    keyof, typeof and indexed access

    Derive property names and values from existing contracts.

  3. 11

    Utility types for application contracts

    Create focused input, output and lookup types without copying fields.

  4. 12

    Mapped, conditional and template literal types

    Build small type transformations and understand their limits.

  5. 13

    Literal objects, satisfies and enums

    Keep precise values while checking a configuration contract.

04

COURSE MODULE

Application development

  1. 14

    Modules and project structure

    Split responsibilities across files with explicit imports.

  2. 15

    Classes, interfaces and composition

    Model stateful behavior and inject dependencies through a contract.

  3. 16

    Promises, async/await and result types

    Model asynchronous work and handle expected failures explicitly.

  4. 17

    Fetch and runtime validation

    Turn unknown JSON into trusted application data.

  5. 18

    DOM elements, forms and events

    Connect typed JavaScript to a working browser form.

Understand what types can guarantee

Learn how static checks catch mistakes and why API responses, saved data and user input still need runtime validation. Practice both compiler checks and executable behavior tests.

Continue with confidence

Finish by building and publishing the browser project. The final lesson includes a release checklist and further study paths for framework typing, declarations, project references and decorators.

Official TypeScript handbook ↗

Browse all EduPoly tutorials →