Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TS Learn Path

Learn TypeScript the way it actually sticks — Handbook-aligned practice, a local progress tracker, and an AI mentor that refuses to spoil the answer.

CI License: MIT TypeScript PRs Welcome Use this template

English · Русский · Getting Started · Comparison · Launch posts


English

AI can autocomplete TypeScript.
This repo teaches you to understand it.

Most “learn TypeScript with AI” chats end the same way: a perfect snippet, a dopamine hit, and zero retention.

TS Learn Path turns the official TypeScript Handbook + Reference into a cloneable practice system:

  • one folder per topic
  • real exercises.ts work (not quizzes)
  • a progress tracker you can commit to git
  • mentor rules for Cursor, Claude, Codex, Gemini, Copilot, Windsurf

Star it if you want learning tooling that respects the struggle.

Demo / screenshots

TS Learn Path workflow

TS Learn Path tracker overview

Lesson card with notes

Live demo:
https://apervashov.github.io/typescript-learning-assistant/

Prefer a clean fork? Use Use this template.

The problem

Usual approach What goes wrong
Watch a course Passive — concepts don’t survive the next PR
Paste into ChatGPT / Copilot Answers arrive before understanding
Random type puzzles Fun, but not mapped to day-to-day app TypeScript
Handbook only Excellent theory, weak deliberate practice loop

Why this repo

TS Learn Path
Curriculum 1:1 with Handbook + Reference sections
Practice Real TypeScript files in your IDE
Progress Local tracker + git-friendly state file
AI Mentor mode (hints, ≥3 attempts, real use cases)
Cost Free, MIT, no account
Offline Works after npm install

See the full matrix in docs/COMPARISON.md.

Quick start

git clone https://github.com/apervashov/typescript-learning-assistant.git
cd typescript-learning-assistant
npm install
npm start

Open http://localhost:4173/ts-tracker.html

Then:

npm run typecheck

Full walkthrough: docs/GETTING_STARTED.md

Example usage

1. Start tracker          → npm start
2. Connect folder once    → Chrome / Edge → “Connect tracker folder”
3. Pick 03) Narrowing     → read the official docs link
4. Edit exercises.ts      → attempt a discriminated union handler
5. Write NOTES.md         → explain why typeof fails for objects
6. Ask your AI mentor     → “hint only, review my attempt”
7. Mark Done              → commit progress if you want history

Good mentor prompts

I’m on 07) Generics. Review my attempt and hint — don’t give the solution.
Explain this error with a real API payload example.
Ask me questions until I can explain keyof without reading notes.

Bad prompts

Solve all exercises.
Give me the final code.

Features

  • 28 lessons across Handbook + Reference
  • Progress tracker with RU/EN UI, status, and notes
  • Git-friendly state in ts-tracker-state.js
  • AI mentor pack already wired for major AI IDEs
  • Strict TypeScript practice via npm run typecheck
  • Beginner → advanced path without abandoning official docs

Architecture

Tracker UI  →  ts-tracker-state.js  →  git history
     ↓
Lesson folders (exercises.ts + NOTES.md)
     ↓
Official Handbook / Reference
     ↓
AGENTS.md mentor rules (mirrored per AI tool)

Details: docs/ARCHITECTURE.md

Lesson map

Handbook

Folder Topic
01) The Basics The Basics
02) Everyday Types Everyday Types
03) Narrowing Narrowing
04) More on Functions More on Functions
05) Object Types Object Types
06) Creating Types from Types Creating Types from Types
07) Generics Generics
08) Keyof Type Operator Keyof
09) Typeof Type Operator Typeof
10) Indexed Access Types Indexed Access Types
11) Conditional Types Conditional Types
11.1) Inferring Within Conditional Types Infer
12) Mapped Types Mapped Types
13) Template Literal Types Template Literal Types
14) Classes Classes
15) Modules Modules

Reference

Folder Topic
R1) Utility Types Utility Types
R2) Decorators Decorators
R3) Declaration Merging Declaration Merging
R4) Enums Enums
R5) Iterators and Generators Iterators and Generators
R6) JSX JSX
R7) Mixins Mixins
R8) Namespaces Namespaces
R9) Symbols Symbols
R10) Triple-Slash Directives Triple-Slash Directives
R11) Type Compatibility Type Compatibility
R12) Variable Declarations Variable Declarations

FAQ

Do I need an AI IDE?
No. The exercises and tracker work alone. AI mentor rules are an accelerator.

Will this give me solution files?
No — and PRs that dump finished answers will be rejected. Learning is the product.

Chrome/Edge only for auto-save?
Folder binding uses the File System Access API. Other browsers can still use the tracker; persistence is manual / localStorage depending on flow.

Is this a replacement for type-challenges?
No. type-challenges is excellent for type-level puzzles. This repo optimizes for Handbook-ordered, app-shaped practice plus mentor behaviour.

Can my team fork this for onboarding?
Yes. That’s a first-class use case.

Roadmap

  • Public GitHub Pages demo of the tracker
  • Screenshot / GIF assets in README
  • Difficulty labels + estimated time per lesson
  • Optional unit-test harness for selected exercises
  • “Interview warm-up” path (subset of lessons)
  • Shareable progress badge / markdown summary export
  • More bilingual exercise prompts where it helps newcomers

Contributing

Read CONTRIBUTING.md and CODE_OF_CONDUCT.md.

Small PRs that reduce beginner friction are especially welcome.

Star History

Star History Chart

License

MIT


Русский

AI умеет дописывать TypeScript.
Этот репозиторий учит его понимать.

TS Learn Path — практика по официальному Handbook / Reference:

  • папка на каждую тему
  • живые exercises.ts, а не только теория
  • трекер прогресса, который можно коммитить
  • правила наставника для Cursor, Claude, Codex, Gemini, Copilot, Windsurf

Если хочешь tooling, который не убивает обучение «готовым ответом» — поставь ⭐.

Быстрый старт

git clone https://github.com/apervashov/typescript-learning-assistant.git
cd typescript-learning-assistant
npm install
npm start

Открой http://localhost:4173/ts-tracker.html

Подробнее: docs/GETTING_STARTED.md

Почему не просто ChatGPT

Без правил агент оптимизирует завершение задачи.
С правилами из этого репо он оптимизирует понимание: подсказки, попытки, точный словарь, реальные кейсы.

Воркфлоу

Трекер → официальная дока → exercises.ts + NOTES.md → typecheck → статус Done

Полезные ссылки

Лицензия

MIT