YOUR TYPESCRIPT LEARNING PATH

A little more TypeScript.
A little more confidence.

One idea at a time, with examples you can follow and checkpoints to see what’s clicking. New here? Begin with chapter one. Know a little already? Jump right in.

Before you start

Bring basic JavaScript variables, functions, arrays, and object literals. Classes are taught later; you do not need to finish the whole JavaScript course first.

Review a foundation whenever you need it: JavaScript values · JavaScript arrays · JavaScript functions · JavaScript object literals

14 open chapters. Your progress is saved as you go.

Your chapters

Choose any starting point
  1. 01

    Use a type error as specific feedback while keeping type checking separate from execution.

    Start here, or skip ahead
    Open chapter: Read compiler feedback and run a checked program
  2. 02

    Describe JavaScript values and function boundaries precisely.

    Open whenever you’re ready
    Open chapter: Types as working contracts
  3. 03

    Model records without confusing optional fields and immutability.

    Open whenever you’re ready
    Open chapter: Object shapes and readonly views
  4. 04

    Use positional contracts when each position has a different meaning.

    Open whenever you’re ready
    Open chapter: Tuples, rest parameters, and array boundaries
  5. 05

    Represent alternatives so invalid combinations are difficult to express.

    Open whenever you’re ready
    Open chapter: Narrowing and explicit states
  6. 06

    Retain useful specific types without pretending assertions validate data.

    Open whenever you’re ready
    Open chapter: Literal inference and checked configuration
  7. 07

    Connect input and output types without discarding information.

    Open whenever you’re ready
    Open chapter: Preserve relationships with generics
  8. 08

    Make callback types reflect every call the implementation may make.

    Open whenever you’re ready
    Open chapter: Function compatibility and callback promises
  9. 09

    Keep public behavior separate from runtime representation.

    Open whenever you’re ready
    Open chapter: Classes, structural contracts, and private state
  10. 10

    Separate compile-time contracts from runtime code.

    Open whenever you’re ready
    Open chapter: Module boundaries and type-only dependencies
  11. 11

    Model failure without confusing it with a missing return value.

    Open whenever you’re ready
    Open chapter: Typed asynchronous results and explicit failure
  12. 12

    Use mapped types to prevent duplicated contracts from drifting.

    Open whenever you’re ready
    Open chapter: Derive API types from one model
  13. 13

    Reason about type transformations without confusing them with runtime branches.

    Open whenever you’re ready
    Open chapter: Conditional types and union distribution
  14. 14

    Connect runtime validation to accurate static contracts.

    Open whenever you’re ready
    Open chapter: Unknown input and trustworthy results

PUT IT TOGETHER

Final assessment & certificate

32 multiple-choice questions and 2 written coding problems. Pass the knowledge section at 80% overall and at least 50% in every chapter area, complete and review the written practice, and meet the attempt-integrity checks to unlock your certificate.

The certificate records a CodeQuest foundations assessment. Written work is self-reviewed; identity and independent proficiency are not verified.

Open final assessment

Take an issuer-recorded assessment with a verifiable certificate

Continue the original guided missions