Files
v10/packages/spf/src/AGENTS.md

1.4 KiB

@videojs/spf source guide

Treat source and colocated tests as implementation truth. Use internal/design/spf only for durable rationale and conventions.

Layers

  • core: framework-neutral composition, signals, tasks, actors, and reactors. It must not depend on media, network, or playback.
  • media: media models, algorithms, and format parsing; browser media helpers live under media/dom.
  • network: fetch and bandwidth primitives.
  • playback: playback actors, behaviors, and engines; browser-bound playback code lives in nested dom directories.
  • index.ts and dom.ts are the primary entry points. Package exports also expose HLS and background-video compositions.

Place code in the lowest layer that satisfies its dependencies. Keep browser APIs out of core and review public entry-point changes deliberately.

Working rules

  • Read only the relevant file under internal/design/spf/conventions.
  • Follow nearby ownership, lifecycle, cleanup, and test patterns.
  • Add public exports intentionally and check their bundle impact when relevant.
  • Prefer clear expressions over mutable intermediate state when both remain readable.

Verification

Use the narrowest relevant test while iterating, then run as appropriate:

pnpm -F @videojs/spf test
pnpm -F @videojs/spf build
pnpm -F @videojs/spf size

Load one specialized SPF skill only when the requested workflow needs it.