spillwavesolutions/mastering-typescript-skill/mastering-typescript
- community
Checking that the SKILL.md file is still in the repository.
Master enterprise-grade TypeScript development with type-safe patterns, modern tooling, and framework integration. This skill provides comprehensive guidance for TypeScript 5.9+, covering type system fundamentals (generics, mapped types, conditional types, satisfies operator), enterprise patterns (error handling, validation with Zod), React integration for type-safe frontends, NestJS for scalable APIs, and LangChain.js for AI applications. Use when building type-safe applications, migrating JavaScript codebases, configuring modern toolchains (Vite 7, pnpm, ESLint, Vitest), implementing advanced type patterns, or comparing TypeScript with Java/Python approaches.
Install
npx vskill@latest install spillwavesolutions/mastering-typescript-skill/mastering-typescriptSKILL.md
Mastering Modern TypeScript
Build enterprise-grade, type-safe applications with TypeScript 5.9+.
Compatibility: TypeScript 5.9+, Node.js 22 LTS, Vite 7, NestJS 11, React 19
Quick Start
When to Use This Skill
Use when:
- Building type-safe React, NestJS, or Node.js applications
- Migrating JavaScript codebases to TypeScript
- Implementing advanced type patterns (generics, mapped types, conditional types)
- Configuring modern TypeScript toolchains (Vite, pnpm, ESLint)
- Designing type-safe API contracts with Zod validation
- Comparing TypeScript approaches with Java or Python
Project Setup Checklist
Before starting any TypeScript project:
Type System Quick Reference
Primitive Types
Union and Intersection Types
Type Guards
The satisfies Operator (TS 5.0+)
Validate type conformance while preserving inference:
Generics Patterns
Basic Generic Function
Constrained Generics
Generic API Response Wrapper
Utility Types Reference
| Type | Purpose | Example | ||
|---|---|---|---|---|
Partial<T> | All properties optional | Partial<User> | ||
Required<T> | All properties required | Required<Config> | ||
Pick<T, K> | Select specific properties | `Pick<User, "id" \ | "name">` | |
Omit<T, K> | Exclude specific properties | Omit<User, "password"> | ||
Record<K, V> | Object with typed keys/values | Record<string, number> | ||
ReturnType<F> | Extract function return type | ReturnType<typeof fn> | ||
Parameters<F> | Extract function parameters | Parameters<typeof fn> | ||
Awaited<T> | Unwrap Promise type | Awaited<Promise<User>> |
Conditional Types
Mapped Types
Framework Integration
React with TypeScript
NestJS with TypeScript
See react-integration.md and nestjs-integration.md for detailed patterns.
Validation with Zod
Modern Toolchain (2025)
| Tool | Version | Purpose | |
|---|---|---|---|
| TypeScript | 5.9+ | Type checking and compilation | |
| Node.js | 22 LTS | Runtime environment | |
| Vite | 7.x | Build tool and dev server | |
| pnpm | 9.x | Package manager | |
| ESLint | 9.x | Linting with flat config | |
| Vitest | 3.x | Testing framework | |
| Prettier | 3.x | Code formatting |
ESLint Flat Config (ESLint 9+)
Migration Strategies
Incremental Migration
- Add
allowJs: trueandcheckJs: falseto tsconfig.json - Rename files from
.jsto.tsone at a time - Add type annotations gradually
- Enable stricter options incrementally
JSDoc for Gradual Typing
See enterprise-patterns.md for comprehensive migration guides.
Common Mistakes
| Mistake | Problem | Fix | |
|---|---|---|---|
Using any liberally | Defeats type safety | Use unknown and narrow | |
| Ignoring strict mode | Misses null/undefined bugs | Enable all strict options | |
Type assertions (as) | Can hide type errors | Use satisfies or guards | |
| Enum for simple unions | Generates runtime code | Use literal unions instead | |
| Not validating API data | Runtime type mismatches | Use Zod at boundaries |
Cross-Language Comparison
| Feature | TypeScript | Java | Python | ||
|---|---|---|---|---|---|
| Type System | Structural | Nominal | Gradual (duck typing) | ||
| Nullability | Explicit (`T \ | null`) | @Nullable annotations | Optional via typing | |
| Generics | Type-level, erased | Type-level, erased | Runtime via typing | ||
| Interfaces | Structural matching | Must implement | Protocol (3.8+) | ||
| Enums | Avoid (use unions) | First-class | Enum class |
Reference Files
- type-system.md — Complete type system guide
- generics.md — Advanced generics patterns
- enterprise-patterns.md — Error handling, validation, architecture
- react-integration.md — React + TypeScript patterns
- nestjs-integration.md — NestJS API development
- toolchain.md — Modern build tools configuration
Assets
- tsconfig-template.json — Strict enterprise config
- eslint-template.js — ESLint 9 flat config
Scripts
- validate-setup.sh — Verify TypeScript environment
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingmastering-typescript/SKILL.md
Popularity
- Repository stars
- 16
- Repository forks
- 1
- 7-day trend score
- 14
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 28 Apr 2026, 6 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/spillwavesolutions/mastering-typescript-skill/mastering-typescript)