🟦 For senior Java and .NET engineers on Arch Linux

90 Days to TypeScript Fluency

No beginner-programming fluff. This roadmap assumes you already know architecture, testing, refactoring, and delivery. The focus is on TypeScript’s real differences, transferable design instincts, and shipping practical systems while you learn.

90Days
5Phases
12+Mini Builds
1Large Capstone
TypeScript atlas mascot
strict: true
fun: also true
🟦 βš™οΈ πŸ§ͺ πŸŒ™ πŸ“¦ 🧠

Your learning journey

Same dense, playful roadmap energy as the Rust guide, but tuned for the TypeScript ecosystem and senior-engineer instincts.

🧠
Days 1–15

TS Core Reorientation

Reset your mental model from nominal OOP to structural, strict, boundary-aware TypeScript.

Strict ModeStructural TypesNarrowingGenerics
πŸ—οΈ
Days 16–30

Modeling & Refactoring

Build stronger models, refactor with the compiler, and validate the ugly outside world.

Mapped TypesValidationErrorsMonorepos
βš™οΈ
Days 31–60

Apps, Tooling & Delivery

Ship real apps, tooling, monorepos, tests, docs, and delivery pipelines that feel senior-level.

AppsToolingCICompiler API
🚦
Days 61–75

Typed Systems at Scale

Work on scale concerns: plugins, schema evolution, governance, diagnostics, and hard edges.

PluginsScaleSecurityGovernance
πŸ†
Days 76–90

Advanced Final Project

Spend the final 15 days on advanced topics while building AtlasKit, a large TypeScript platform project.

CapstonePlatformRealtimeDocs

TypeScript skill progression

Type modeling
96%
Runtime validation
88%
Tooling & build systems
92%
Monorepo architecture
84%
Compiler/API metaprogramming
73%
Production hardening
86%

Mental model shift: Java/.NET β†’ TypeScript

Nominal world

Identity comes from declared type names.

class Invoice implements IEntity
runtime metadata often exists
frameworks love reflection
β†’

Structural world

Compatibility comes from shape and control flow.

type Invoice = { id: InvoiceId; total: number }
types mostly erase at runtime
validate boundaries explicitly

Build while you learn

You repeatedly turn concepts into a CLI, API, UI slice, library, or analyzer script.

Arch Linux friendly

Commands and package choices assume Arch, pacman, corepack, pnpm, and a modern Node toolchain.

Last 15 days = advanced capstone

The final stretch builds AtlasKit, a bigger TypeScript platform with contracts, plugins, UI, API, docs, and hardening.

Daily lessons

Each day is practical and bite-sized, usually 60 to 120 minutes of focused work.

0 / 90 days completed

Core resources

Reference material and tooling that pair well with the roadmap.

πŸ“˜

TypeScript Handbook

The canonical reference. Keep it nearby for all 90 days.

typescriptlang.org β†’
🧠

Total TypeScript tutorials

Matt Pocock’s material is especially useful for intermediate and advanced TypeScript instincts.

totaltypescript.com β†’
πŸ›‘οΈ

Zod

For turning untrusted runtime input into trustworthy typed values.

zod.dev β†’
πŸ§ͺ

Vitest

Fast test runner with a pleasant TypeScript story.

vitest.dev β†’
⚑

Vite

Great default for front-end and shared app workflows.

vite.dev β†’
🌳

ts-morph + Compiler API

For codemods, analyzers, and TypeScript-as-a-platform work.

ts-morph.com β†’
πŸ“¦

pnpm workspaces

Fast, disciplined package management and monorepo ergonomics.

pnpm.io β†’
🐧

Arch Linux Node setup

Use pacman and corepack for a clean local baseline.

Arch Wiki β†’
🐧

Arch Linux toolchain setup

1
Install Node and enable pnpm
sudo pacman -S nodejs npm
corepack enable
corepack prepare pnpm@latest --activate
2
Create a strict starter project
pnpm init
pnpm add -D typescript tsx @types/node vitest
pnpm exec tsc --init
3
Nice extras for a senior workflow
pnpm add -D @biomejs/biome zod typedoc tsup playwright
pnpm dlx playwright install
4
Editors
code --install-extension dbaeumer.vscode-eslint
code --install-extension biomejs.biome
code --install-extension ms-playwright.playwright
# or Neovim with tsserver / typescript-language-server

YouTube resources

A small, high-signal video list. All links open in a new tab.