What it does
Practical TypeScript Refresher helps experienced developers revisit the language and practise writing code before an interview or after time away from TypeScript.
The learning loop is straightforward: read an explanation, write an implementation in your own editor, work through expected outcomes, then open the explained solution. Readers can choose a topic or follow a guided route through language fundamentals and backend coding practice.
The handbook covers narrowing, generics, JavaScript behavior, collections, validation, async work, concurrency, data ingestion, debugging, and tests. A workshop and mock interview bring those mechanics together. All 14 chapters and the shared practice are available in English, Spanish, and Russian.

Choose a topic or follow a guided route through the refresher.
My contribution
I started the project for my own interview preparation, then expanded it into a public refresher. I defined its audience and scope, shaped the learning flow, and directed AI-assisted implementation, content development, and translations.
Iteration focused on concrete usability problems. Search needed to find explanations and code, not just chapter titles. Practice needed to belong to the guided routes. Checking a solution needed clear cases and expected outcomes, rather than a download whose purpose was unclear.
I also kept the scope explicit: the handbook helps readers revisit specific mechanics and notice gaps. It does not assess overall engineering ability or promise interview readiness.
Architecture
A Node.js build turns Markdown sources into static HTML using markdown-it and highlight.js. The reader uses plain JavaScript and CSS; the implementations and checked examples use TypeScript.
The build generates section-level search indexes containing prose, code, and explained answers. Search results link directly to the relevant section. Reading progress stays in browser storage and carries across language editions.
English is the canonical source. Build checks validate corresponding content and interface structure across all three editions. GitHub Actions runs verification, and GitHub Pages serves the generated site. There is no runtime backend, account system, analytics, or uploaded solution data.
Decisions and limits
Change the vocabulary, preserve the contract
Readers can switch examples between a product catalog, analytics snapshots, background jobs, and profile synchronization. The shared exercises retain their validation, ordering, deduplication, and failure rules while entity names and fields change.
This keeps the exercise consistent across familiar contexts. A vocabulary panel explains the simplified model: importing a job-state snapshot, for example, does not execute or retry the job.
Make practice explicit
Solutions start collapsed so readers can attempt the task first. Practice includes concrete checks for malformed input, version ties, scoped identifiers, bounded concurrency, and partial failures.
Code runs in the reader’s own editor. The browser provides explanations, copyable examples, and expected outcomes. An optional self-check covers 12 specific rules and links to further reading; it is not a coding skill assessment.

Write your implementation, check the edge cases, then compare the explained solution.
Verify examples without overstating the result
The October 2026 release verification passed 30 automated tests, compiled 696 TypeScript snippet variants across languages and domains in strict mode, and checked 48 generated pages with 1,320 local links and asset references.
These checks support the correctness and consistency of the published material. They do not establish learning effectiveness. Frameworks, security, system design, and specialist algorithms require separate preparation; links to official documentation give readers a path beyond the refresher.
Explore the project
Open the handbook or try the shared practice.
The source, release verification notes, and publishing workflow are public. Counts above describe the October release; source links follow HEAD.