--- name: hyperframes-registry description: Search, install, and wire registry blocks and components into HyperFrames compositions. Use BEFORE hand-building any named visual — whenever a brief, a user, or a storyboard names a look, effect, treatment, or transition such as CRT scanlines, glitch, chromatic aberration, film grain, a shimmer sweep, a chart, a code or terminal window, a map, or a confetti burst — because roughly 400 hosted items already cover many of them and the search ranks all of them with nothing installed, no project, and no account. Also use when running hyperframes add or hyperframes catalog, installing one item or every block matching a tag, wiring an installed item into index.html, or working with hyperframes.json. Covers discovery, install locations, block sub-composition wiring, component snippet merging, and authoring a new block or component to contribute upstream (idea → scaffold → validate → PR). --- **Plugin installs:** Before setup or freshness commands, follow [plugin execution rules](../hyperframes/references/plugin-installation.md) when this skill is inside a HyperFrames plugin. Standalone installs keep the update instructions below. # HyperFrames Registry The registry provides reusable blocks and components installable via `hyperframes add `. - **Blocks** — standalone sub-compositions (own dimensions, duration, timeline). Included via `data-composition-src` in a host composition. - **Components** — effect snippets (no own dimensions). Pasted directly into a host composition's HTML. ## Quick reference ```bash hyperframes add data-chart # install a block hyperframes add grain-overlay # install a component hyperframes add captions # install every block tagged captions hyperframes add shimmer-sweep --dir . # target a specific project hyperframes add data-chart --json # machine-readable output hyperframes add data-chart --no-clipboard # skip clipboard (CI/headless) ``` After install, the CLI prints which files were written and a snippet to paste into your host composition. The snippet is a starting point — you'll need to add `data-composition-id` (must match the block's internal composition ID), `data-start`, and `data-track-index` attributes when wiring blocks. The positional value is resolved as an exact item name first. If no item matches and the value is a tag, the command installs every block with that tag. Registry dependencies are installed before the requested item. `hyperframes add` works only for blocks and components; for examples, use `hyperframes init --example ` instead. ## Install locations Blocks install to `compositions/.html` by default. Components install to `compositions/components/.html` by default. These paths are configurable in `hyperframes.json`: ```json { "registry": "https://raw.githubusercontent.com/heygen-com/hyperframes/main/registry", "paths": { "blocks": "compositions", "components": "compositions/components", "assets": "assets" } } ``` See [install-locations.md](./references/install-locations.md) for full details. ## Wiring blocks Blocks are standalone compositions — include them via `data-composition-src` in your host `index.html`: ```html
``` Key attributes: - `data-composition-src` — path to the block HTML file - `data-composition-id` — must match the block's internal ID - `data-start` — when the block appears in the host timeline (seconds) - `data-duration` — how long the block plays - `data-width` / `data-height` — block canvas dimensions - `data-track-index` — layer ordering (higher = in front) See [wiring-blocks.md](./references/wiring-blocks.md) for full details. ## Wiring components Components are snippets — paste their HTML into your composition's markup, their CSS into your style block, and their JS into your script (if any): 1. Read the installed file (e.g., `compositions/components/grain-overlay.html`) 2. Copy the HTML elements into your composition's `
` 3. Copy the `