TypeScript
Complete TypeScript course: from basic types to generics, utility types, decorators and real patterns. Strict typing for JavaScript.
What You'll Learn
This Course Includes
Curriculum
26 lessons · 44 lessons · 35 exercises
Introduction to TypeScript
What is TS, why use it, tsc compiler, first program
- What is TypeScript? +10 XP
- Syntax Basics +15 XP
- TypeScript vs JavaScript +10 XP
Basic Types
string, number, boolean, any, unknown, void, never, null, undefined
- Primitive Types +10 XP
- When to Annotate +15 XP
Arrays and Tuples
Array<T>, T[], readonly arrays, tuples, rest elements
- Typed Arrays +10 XP
- Tuples +15 XP
Object Types and Type Alias
type alias, optional, readonly, nested types, index signatures
- Object Types +10 XP
- Practice: Objects +15 XP
Interfaces
interface, extends, implements, declaration merging, interface vs type
- Interface +10 XP
- implements +15 XP
Union Types
union |, narrowing, discriminated unions, exhaustive checks
- Union Types +10 XP
- Practice: Union +15 XP
Literal Types and Enum
literals, as const, enum, const enum
- Literal Types +10 XP
- Practice: Literals +15 XP
Type Narrowing
typeof, instanceof, in, type guards, assertions
- Type Narrowing +10 XP
- Practice: Narrowing +15 XP
Function Types
function types, overloads, optional/rest, callbacks
- Function Types +10 XP
- Practice: Functions +15 XP
Generics: Basics
generic functions, interfaces, classes, constraints, keyof
- Introduction to Generics +10 XP
- Constraints and keyof +15 XP
Utility Types
Partial, Required, Pick, Omit, Record, Readonly, ReturnType
- Built-in Utility Types +10 XP
- Practice: Utility Types +15 XP
Classes in TypeScript
access modifiers, parameter properties, abstract, static
- Typed Classes +10 XP
- Practice: Classes +15 XP
Conditional and Mapped Types
conditional types, infer, mapped types, template literal types
- Conditional Types +10 XP
- Practice: Advanced Types +15 XP
Assertions and satisfies
as, satisfies, non-null !, const assertion, when to use
- Type Assertions +10 XP
Modules and Declaration Files
import type, .d.ts, declare, @types
- TypeScript Modules +10 XP
- tsconfig.json +10 XP
TypeScript and DOM
HTMLElement types, event types, querySelector generics
- Typed DOM +10 XP
- Practice: DOM +15 XP
Decorators
class, method, property decorators, frameworks
- Decorators +10 XP
TypeScript with APIs
typed fetch, generic API client, Zod
- Typed Fetch +10 XP
- Practice: API +15 XP
Error Handling in TypeScript
typed errors, custom errors, Result pattern, never
- Typed Errors +15 XP
TypeScript Patterns
builder, event emitter, state machine — typed
- Typed Patterns +15 XP
Migrating JS to TypeScript
strategy, allowJs, @ts-check, gradual typing
- Migrating to TypeScript +10 XP
Project: Typed Utility Library
Generic utilities: groupBy, retry, debounce — typed
- Typed Utilities +15 XP
Project: Generic Data Store
CRUD with generics, filter, sort
- Generic Store +15 XP
Project: Kanban Board
Interactive Kanban: columns, cards, drag, typed state
- Kanban Architecture +15 XP
Project: TypeScript Quiz
TypeScript quiz: questions, answers, score, results
- TypeScript Quiz +15 XP
Final Project: Task Manager
Fully typed app: generics, unions, utility types
- Architecture +10 XP
- Implementation +15 XP
Requirements
No prior knowledge required — we start from scratch
Course FAQ
Do I need programming experience?
How do lessons work?
How long does the course take?
Will I get a certificate?
Ready to start?
Sign up for free and start coding right now. Your first result in 5 minutes.
Start Learning