Agent skill

ts-library

Use when authoring TypeScript libraries - covers project setup, package exports, build tooling (tsdown/unbuild), API design patterns, type inference tricks, testing, and release workflows. Patterns extracted from 20+ high-quality ecosystem libraries.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/ts-library

SKILL.md

TypeScript Library Development

Patterns for authoring high-quality TypeScript libraries, extracted from studying unocss, shiki, unplugin, vite, vitest, vueuse, zod, trpc, drizzle-orm, and more.

When to Use

  • Starting a new TypeScript library (single or monorepo)
  • Setting up package.json exports for dual CJS/ESM
  • Configuring tsconfig for library development
  • Choosing build tools (tsdown, unbuild)
  • Designing type-safe APIs (builder, factory, plugin patterns)
  • Writing advanced TypeScript types
  • Setting up vitest for library testing
  • Configuring release workflow and CI

For Nuxt module development: use nuxt-modules skill

Quick Reference

Working on... Load file
New project setup references/project-setup.md
Package exports references/package-exports.md
tsconfig options references/typescript-config.md
Build configuration references/build-tooling.md
ESLint config references/eslint-config.md
API design patterns references/api-design.md
Type inference tricks references/type-patterns.md
Testing setup references/testing.md
Release workflow references/release.md
CI/CD setup references/ci-workflows.md

Loading Files

Consider loading these reference files based on your task:

  • references/project-setup.md - if starting a new TypeScript library project
  • references/package-exports.md - if configuring package.json exports or dual CJS/ESM
  • references/typescript-config.md - if setting up or modifying tsconfig.json
  • references/build-tooling.md - if configuring tsdown, unbuild, or build scripts
  • references/eslint-config.md - if setting up ESLint for library development
  • references/api-design.md - if designing public APIs, builder patterns, or plugin systems
  • references/type-patterns.md - if working with advanced TypeScript types or type inference
  • references/testing.md - if setting up vitest or writing tests for library code
  • references/release.md - if configuring release workflow or versioning
  • references/ci-workflows.md - if setting up GitHub Actions or CI/CD pipelines

DO NOT load all files at once. Load only what's relevant to your current task.

Key Principles

  • ESM-first: "type": "module" with .mjs outputs
  • Dual format: always support both CJS and ESM consumers
  • moduleResolution: "Bundler" for modern TypeScript
  • tsdown for most builds, unbuild for complex cases
  • Smart defaults: detect environment, don't force config
  • Tree-shakeable: lazy getters, proper sideEffects: false

Token efficiency: Main skill ~300 tokens, each reference ~800-1200 tokens

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results