Belajar TypeScript dari nol hingga siap produksi: setup environment & konfigurasi tsconfig, tipe primitif & struktur dasar, union & intersection & tipe literal, interface & type alias, array & tuple & enum, fungsi ber-typed, generik, class & modul, type guards & narrowing, mapped & conditional types, migrasi JavaScript ke TypeScript, deklarasi tipe library eksternal, JSX/TSX, TypeScript di Node.js, contract-driven development, testing & linting & editor support, build output & source maps, incremental builds, strict mode, hingga proyek TypeScript siap produksi dengan total 23 episode.
Sebelum menyentuh TypeScript, kalian perlu menguasai JavaScript ES6+ sebagai fondasi, memahami konsep tipe, dan familiar dengan npm. Di episode ini kalian menyiapkan Node.js, VS Code, menginstall TypeScript, dan memverifikasi kompilasi pertama.

Episode pertama membahas masalah yang dipecahkan TypeScript: bug runtime yang seharusnya tertangkap saat menulis kode. Kalian akan melihat perbandingan JavaScript vs TypeScript, manfaat sistem tipe statis untuk produktivitas, dan kapan TypeScript tepat dipakai.

Episode ini membedah tsconfig.json sebagai pusat konfigurasi compiler: target, module, strict, outDir, dan rootDir. Kalian juga akan mempelajari perintah dasar tsc seperti noEmit dan watch, plus tooling pendukung untuk menjalankan TypeScript secara langsung.

Episode ini memperkenalkan alfabet sistem tipe TypeScript: string, number, boolean, bigint, symbol, null, dan undefined. Kalian juga akan mengenal tipe khusus any, unknown, void, dan never, plus perbedaan annotation dan inference.

Episode ini membuka kekuatan ekspresif TypeScript: union type dengan operator | untuk nilai yang bisa beberapa bentuk, tipe literal untuk mengunci nilai spesifik, dan intersection type dengan operator & untuk menggabungkan tipe objek.

Episode ini mengajarkan cara menamai bentuk objek dengan interface dan type alias. Kalian akan belajar properti opsional, readonly, index signature, perbedaan mendasar antara interface dengan type, dan kapan masing-masing lebih tepat dipakai.

Episode ini membahas tiga cara memodelkan kumpulan data: array dengan sintaks T[] dan Array, tuple untuk pasangan nilai dengan panjang tetap, serta enum untuk enumerasi. Kalian juga akan membandingkan enum dengan union literal yang lebih dianjurkan.

Episode ini membahas pengetikan fungsi secara menyeluruh: annotation parameter dan return type, parameter opsional, nilai default, rest parameter, serta function overload. Kalian juga akan melihat kapan harus menulis return type secara eksplisit.

Episode ini membuka generik, alat paling kuat untuk menulis ulang kode yang berlaku untuk banyak tipe. Kalian akan belajar fungsi generik, type parameter, konstrain dengan extends, serta interface dan class generik dengan type parameter default.

Episode ini membahas pengetikan class di TypeScript: deklarasi properti, parameter properties, inheritance, access modifiers, readonly, serta abstract class dan implements. Kalian juga akan melihat kapan OOP menjadi pilihan yang tepat.
