KS
Killer-Skills

api — Categories.community

v1.0.0
GitHub

About this Skill

Perfect for Developer Agents needing to design and evaluate TypeScript library APIs with great defaults and escape hatches. Technical preview of Video.js v10 - open source media player framework for Web and React.

videojs videojs
[0]
[0]
Updated: 2/27/2026

Quality Score

Top 5%
44
Excellent
Based on code quality & docs
Installation
SYS Universal Install (Auto-Detect)
Cursor IDE Windsurf IDE VS Code IDE
> npx killer-skills add videojs/v10

Agent Capability Analysis

The api MCP Server by videojs is an open-source Categories.community integration for Claude and other AI agents, enabling seamless task automation and capability expansion.

Ideal Agent Persona

Perfect for Developer Agents needing to design and evaluate TypeScript library APIs with great defaults and escape hatches.

Core Value

Empowers agents to create obvious, fast, safe, and composable APIs using principles like emergent extensibility, composition over configuration, and the onion model, with support for advanced TypeScript features.

Capabilities Granted for api MCP Server

Designing intuitive API interfaces
Evaluating developer experience for TypeScript libraries
Implementing composition over configuration for React applications

! Prerequisites & Limits

  • Requires understanding of TypeScript and API design principles
  • Limited to open-source media player frameworks like Video.js
Project
SKILL.md
4.7 KB
.cursorrules
1.2 KB
package.json
240 B
Ready
UTF-8

# Tags

[No tags]
SKILL.md
Readonly

API Design & Developer Experience

Principles for designing TypeScript library APIs and evaluating developer experience.

Goal: APIs should feel obvious, fast, safe, and composable — with great defaults and great escape hatches.

Quick Reference

Foundational

  • Emergent extensibility — Best extension points look like well-designed APIs, not plugin systems
  • Composition over configurationdevtools(persist(fn)) beats { middlewares: [] }
  • Onion model — Transformative middleware innermost, observational outermost

API Surface

  • Config objects for 3+ parameters (no overloads)
  • Flat returns for independent values, namespaced for cohesive units
  • Rule of two — Tuples for 2 values, objects for 3+
  • Inference over annotation — If users annotate, types aren't flowing

Progressive Disclosure

  • Complexity grows with use case — Zero-config → Options → Composition → Headless → Core
  • Escape hatches compose — Don't require reimplementing defaults
  • Explicit contracts — Render props over implicit requirements

Developer Experience

  • Time-to-first-success — Minimize time from install to working code
  • Cognitive load — Fewer concepts > fewer keystrokes
  • Predictable outcomes — Match user mental models
  • Editor ergonomics — TypeScript inference should just work

Conflict Resolution

When principles conflict, prioritize:

  1. Correctness — wrong behavior > verbose API
  2. Type Safety — inference failures > extra generics
  3. Simplicity — fewer concepts > fewer keystrokes
  4. Consistency — match existing codebase patterns
  5. Bundle Size — tree-shaking matters, but not at DX cost

Anti-Patterns

Anti-PatternWhy It Fails
Function overloadsPoor errors, autocomplete confusion
Runtime plugin registrationLoses type safety, implicit ordering
Positional parameters (3+)Order confusion, breaking changes
Implicit contractsSilent breakage when requirements unmet
Per-module middlewareUnexpected interactions
Shotgun parsingValidation scattered, not at boundaries
Boolean trapsfn(true, false) — what do these mean?
Multiple competing APIsConfusing — which method to use?

Reference Files

FileContents
references/principles.mdCore design and DX principles
references/typescript.mdType inference patterns (author + consumer)
references/state.mdState management patterns and architecture
references/extensibility.mdPipelines, builders, adapters, lifecycles
references/anti-patterns.mdCommon mistakes to avoid
references/libraries.mdReference libraries and their patterns
references/voices.mdPractitioner heuristics and reference URLs

Loading by Domain

DomainLoad
General API workprinciples.md
TypeScript/typestypescript.md
State managementstate.md
Middleware/pluginsextensibility.md
Avoiding mistakesanti-patterns.md
Library comparisonslibraries.md, voices.md

Review

For reviewing APIs and architecture, load review/workflow.md.

FileContents
review/workflow.mdReview process and checklists
review/agents.mdSub-agent prompts
review/templates.mdIssue format, report template
review/checklist.mdQuick single-agent checklist
review/example.mdComplete example review

Related Skills

NeedUse
Building UI componentscomponent skill
Accessibility patternsaria skill
Documentationdocs skill

Related Skills

Looking for an alternative to api or building a Categories.community AI Agent? Explore these related open-source MCP Servers.

View All

widget-generator

Logo of f
f

widget-generator is an open-source AI agent skill for creating widget plugins that are injected into prompt feeds on prompts.chat. It supports two rendering modes: standard prompt widgets using default PromptCard styling and custom render widgets built as full React components.

149.6k
0
Design

chat-sdk

Logo of lobehub
lobehub

chat-sdk is a unified TypeScript SDK for building chat bots across multiple platforms, providing a single interface for deploying bot logic.

73.0k
0
Communication

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
Communication