Skip to main content

design-api

Design Video.js TypeScript APIs. Use for public shape, inference, state, extension points, middleware, composition, or ergonomics.

Informations de source

Dépôt
videojs/video.js
Dernière activité de la source
28 septembre 2026 à 21:41
Langue détectée de SKILL.md
anglais
Étoiles
40 037
Forks
7 486

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
8 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
design-api
description
Design Video.js TypeScript APIs. Use for public shape, inference, state, extension points, middleware, composition, or ergonomics.
# API design and DX Inspect the current call sites, types, tests, exports, and relevant design records before applying general guidance. Existing local contracts beat generic patterns. ## Default priorities 1. Correct observable behavior 2. Type safety and useful inference 3. A small, coherent concept set 4. Consistency with adjacent Video.js APIs 5. Composable escape hatches and tree-shakable output Prefer config objects once positional arguments become ambiguous, explicit contracts over hidden coupling, and inference over required annotations. Avoid adding a plugin system when ordinary composition or a narrow extension point solves the problem. ## Load references conditionally - General API tradeoffs: `references/principles.md` - Type inference or public type shape: `references/typescript.md` - Store, signal, or state architecture: `references/state.md` - Middleware, builders, adapters, or lifecycles: `references/extensibility.md` - Suspected design smell: `references/anti-patterns.md` - Prior-art comparison: `references/libraries.md` and, only if useful, `references/voices.md` Do not load every reference by default. ## Example Input: “Design a typed selector API for the store.” Output: A concrete public shape with inference behavior, compatibility tradeoffs, extension points, and tests to prove the contract.
Voir sur GitHub