Files
heygen-com__hyperframes/docs/docs.json
T

143 lines
3.0 KiB
JSON
Raw Normal View History

{
"$schema": "https://mintlify.com/docs.json",
docs: apply HyperFrames design system to Mintlify theme (#225) * docs: apply HyperFrames design system to Mintlify theme Update docs config and add custom CSS to match the HyperFrames brand: - Switch theme from mint to maple, replace cyan palette with warm neutrals - Add Inter (body/headings) and IBM Plex Mono (code) fonts - Add custom.css with full light/dark mode CSS variables - Default to light mode appearance - Replace box-shadow hover effects with border-color (flat aesthetic) - Add DESIGN.md to repo root as design system reference - Fix docs CI to also trigger on DOCS_GUIDELINES.md pushes to main Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: replace HeyGen logo with HyperFrames text wordmark Replace 41KB HeyGen SVG logos with lightweight (~400B) text-based SVGs rendering "HyperFrames" in Inter semibold with tight tracking, matching the wordmark style on hyperframes.heygen.com. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: use ABC Solar Display font for logo wordmark Match the exact font rendering from hyperframes.heygen.com: - Load ABC Solar Display Bold from HeyGen static assets CDN - SVGs use 15.2px/600w/-0.15 letter-spacing (matches computed styles) - Dark mode fill matches rgb(240,240,240) from the website - Add @font-face in custom.css for site-wide availability - Fix lefthook: remove css from oxfmt glob (oxfmt doesn't support CSS) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: convert logo SVGs to outlined paths SVG <text> elements don't render custom fonts when loaded as <img> (browser security restriction). Convert the ABC Solar Display glyphs to SVG paths extracted from the font outlines — renders identically everywhere with zero font dependency. Remove @font-face for the display font from custom.css since it's no longer needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: constrain logo height to match website sizing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Revert "docs: constrain logo height to match website sizing" This reverts commit 89e9cb598e00874d87e501128b2dd689192329bd. * docs: switch body font from Inter to TT Norms Pro Use TT Norms Pro (from HeyGen static assets CDN) to match hyperframes.heygen.com. Loads weights 400-700 via @font-face with Inter as fallback. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 20:24:35 -07:00
"name": "HyperFrames",
"theme": "maple",
"colors": {
docs: apply HyperFrames design system to Mintlify theme (#225) * docs: apply HyperFrames design system to Mintlify theme Update docs config and add custom CSS to match the HyperFrames brand: - Switch theme from mint to maple, replace cyan palette with warm neutrals - Add Inter (body/headings) and IBM Plex Mono (code) fonts - Add custom.css with full light/dark mode CSS variables - Default to light mode appearance - Replace box-shadow hover effects with border-color (flat aesthetic) - Add DESIGN.md to repo root as design system reference - Fix docs CI to also trigger on DOCS_GUIDELINES.md pushes to main Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: replace HeyGen logo with HyperFrames text wordmark Replace 41KB HeyGen SVG logos with lightweight (~400B) text-based SVGs rendering "HyperFrames" in Inter semibold with tight tracking, matching the wordmark style on hyperframes.heygen.com. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: use ABC Solar Display font for logo wordmark Match the exact font rendering from hyperframes.heygen.com: - Load ABC Solar Display Bold from HeyGen static assets CDN - SVGs use 15.2px/600w/-0.15 letter-spacing (matches computed styles) - Dark mode fill matches rgb(240,240,240) from the website - Add @font-face in custom.css for site-wide availability - Fix lefthook: remove css from oxfmt glob (oxfmt doesn't support CSS) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: convert logo SVGs to outlined paths SVG <text> elements don't render custom fonts when loaded as <img> (browser security restriction). Convert the ABC Solar Display glyphs to SVG paths extracted from the font outlines — renders identically everywhere with zero font dependency. Remove @font-face for the display font from custom.css since it's no longer needed. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * docs: constrain logo height to match website sizing Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Revert "docs: constrain logo height to match website sizing" This reverts commit 89e9cb598e00874d87e501128b2dd689192329bd. * docs: switch body font from Inter to TT Norms Pro Use TT Norms Pro (from HeyGen static assets CDN) to match hyperframes.heygen.com. Loads weights 400-700 via @font-face with Inter as fallback. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 20:24:35 -07:00
"primary": "#0a0a0a",
"light": "#f6f5f1",
"dark": "#0a0a0a"
},
"background": {
"color": {
"light": "#f6f5f1",
"dark": "#0a0a0a"
}
},
"fonts": {
"family": "Inter",
"heading": {
"family": "Inter"
}
},
"appearance": {
"default": "light"
},
"logo": {
"light": "/logo/light.svg",
"dark": "/logo/dark.svg"
},
"favicon": "/favicon.svg",
"contextual": {
"options": [
"copy",
"claude",
"cursor",
"vscode",
"windsurf",
"mcp",
{
"title": "Open an issue",
"description": "Report a bug or request a feature",
"icon": "github",
"iconType": "brands",
"href": "https://github.com/heygen-com/hyperframes/issues/new"
}
]
},
"navigation": {
"tabs": [
{
"tab": "Documentation",
"groups": [
{
"group": "Getting Started",
feat(skills): hyperframes-registry skill (#261) ## What New skill `hyperframes-registry` that teaches AI coding agents how to install and wire registry blocks and components into HyperFrames compositions. ### Skill structure ``` skills/hyperframes-registry/ SKILL.md — triggers, overview, quick reference references/ install-locations.md — default paths, hyperframes.json config wiring-blocks.md — iframe inclusion, data attributes, positioning wiring-components.md — snippet merging (HTML, CSS, JS, timeline) discovery.md — manifest reading, item fields, available items table demo-html-pattern.md — why components ship demo.html, structure conventions examples/ add-block.md — worked example: data-chart block install + wiring add-component.md — worked example: shimmer-sweep component install + wiring ``` ## Why Phase B of the catalog plan (PR 10). Without this skill, agents using `hyperframes add` have to guess how to wire installed items into compositions. The skill encodes the iframe/snippet patterns so agents get it right on the first attempt. ## How - SKILL.md frontmatter triggers on: `hyperframes add`, "block", "component", `hyperframes.json` - References cover every step: discovery, install, wiring blocks (iframe), wiring components (snippet merge), and the demo.html convention - Two worked examples walk through complete install-to-preview workflows - Updated CLAUDE.md skills table + trigger rules, README.md skills table, docs/packages/cli.mdx ## Test plan - [x] `scripts/lint-skills.ts` passes (checked 4 skill files, no issues) - [x] `oxfmt --check` passes on all markdown files - [x] SKILL.md frontmatter has valid `name` and `description` - [x] All reference links in SKILL.md resolve to existing files - [x] CLAUDE.md, README.md, and docs CLI page updated with new skill
2026-04-14 16:27:24 -07:00
"pages": [
"introduction",
"quickstart",
"examples"
]
},
{
"group": "Concepts",
"pages": [
"concepts/compositions",
"concepts/data-attributes",
"concepts/frame-adapters",
"concepts/determinism"
]
},
{
"group": "Guides",
"pages": [
"guides/gsap-animation",
"guides/rendering",
"guides/common-mistakes",
"guides/troubleshooting"
]
}
]
},
{
"tab": "Packages",
"groups": [
{
"group": "Packages",
"pages": [
"packages/core",
"packages/engine",
feat: allow clip animation + ship <hyperframes-player> web component (#209) ## Summary Two independent initiatives that improve agent DX and expand HyperFrames' reach. ### Initiative 1: Fix the Clip Animation Footgun - `gsap_animates_clip_element` lint rule now uses smart detection — only errors when GSAP animates `visibility` or `display` on a clip element - All other properties (opacity, transform, x, y, scale, etc.) are allowed silently - This was the #1 agent failure in QA (10/10 agents hit it on v0.2.1) ### Initiative 2: `<hyperframes-player>` Web Component - New `@hyperframes/player` package — zero dependencies, 3.3KB gzipped - Iframe-based web component with Shadow DOM for perfect isolation - Video-like API: `play()`, `pause()`, `seek()`, `currentTime`, `duration`, events - Controls overlay with play/pause, scrubber (mouse + touch), time display, auto-hide - Full docs page at `docs/packages/player.mdx` ## Before / After ### Clip animation lint **Before (10/10 agents hit this):** ``` ✗ gsap_animates_clip_element: GSAP animation targets a clip element. Selector "#title" resolves to element <div id="title" class="clip">. The framework manages clip visibility — animate an inner wrapper instead. Fix: Wrap content in a child <div> and target that with GSAP. ``` **After (only errors on actual conflicts):** ``` # This passes lint — no error: tl.from("#title", { opacity: 0, y: -50, scale: 0.8 }, 0); # This still errors — actual conflict with runtime: tl.to("#title", { visibility: "hidden" }, 3); ✗ gsap_animates_clip_element: GSAP animation sets visibility on a clip element. Fix: Remove the visibility/display tween. Use opacity for fade effects. ``` ### Embeddable player **Before:** No way to embed a composition in a web page. **After:** ```html <script src="https://cdn.jsdelivr.net/npm/@hyperframes/player"></script> <hyperframes-player src="./composition/index.html" controls></hyperframes-player> ``` ```js const player = document.querySelector('hyperframes-player'); player.play(); player.pause(); player.seek(2.5); player.addEventListener('ready', (e) => console.log('Duration:', e.detail.duration)); ``` ## Test plan - [x] 427 core tests pass (20 GSAP lint tests with smart detection) - [x] 7 player tests pass (formatTime + element registration) - [x] TypeScript compiles cleanly (core + player) - [x] Lint: GSAP animating clip with safe props → 0 errors - [x] Lint: GSAP animating clip with `visibility` → 1 error (correct) - [x] Player builds to 3.3KB gzipped ESM - [x] Lockfile updated for CI - [x] Docs page added at `docs/packages/player.mdx`
2026-04-06 19:59:39 +02:00
"packages/player",
"packages/producer",
"packages/studio",
"packages/cli"
]
}
]
},
feat(skills): hyperframes-registry skill (#261) ## What New skill `hyperframes-registry` that teaches AI coding agents how to install and wire registry blocks and components into HyperFrames compositions. ### Skill structure ``` skills/hyperframes-registry/ SKILL.md — triggers, overview, quick reference references/ install-locations.md — default paths, hyperframes.json config wiring-blocks.md — iframe inclusion, data attributes, positioning wiring-components.md — snippet merging (HTML, CSS, JS, timeline) discovery.md — manifest reading, item fields, available items table demo-html-pattern.md — why components ship demo.html, structure conventions examples/ add-block.md — worked example: data-chart block install + wiring add-component.md — worked example: shimmer-sweep component install + wiring ``` ## Why Phase B of the catalog plan (PR 10). Without this skill, agents using `hyperframes add` have to guess how to wire installed items into compositions. The skill encodes the iframe/snippet patterns so agents get it right on the first attempt. ## How - SKILL.md frontmatter triggers on: `hyperframes add`, "block", "component", `hyperframes.json` - References cover every step: discovery, install, wiring blocks (iframe), wiring components (snippet merge), and the demo.html convention - Two worked examples walk through complete install-to-preview workflows - Updated CLAUDE.md skills table + trigger rules, README.md skills table, docs/packages/cli.mdx ## Test plan - [x] `scripts/lint-skills.ts` passes (checked 4 skill files, no issues) - [x] `oxfmt --check` passes on all markdown files - [x] SKILL.md frontmatter has valid `name` and `description` - [x] All reference links in SKILL.md resolve to existing files - [x] CLAUDE.md, README.md, and docs CLI page updated with new skill
2026-04-14 16:27:24 -07:00
{
"tab": "Catalog",
"groups": [
{
"group": "Blocks",
"pages": [
"catalog/blocks/data-chart",
"catalog/blocks/flowchart",
"catalog/blocks/logo-outro"
]
},
{
"group": "Components",
"pages": [
"catalog/components/grain-overlay",
"catalog/components/grid-pixelate-wipe",
"catalog/components/shimmer-sweep"
]
}
]
},
{
"tab": "Reference",
"groups": [
{
"group": "Reference",
feat(skills): hyperframes-registry skill (#261) ## What New skill `hyperframes-registry` that teaches AI coding agents how to install and wire registry blocks and components into HyperFrames compositions. ### Skill structure ``` skills/hyperframes-registry/ SKILL.md — triggers, overview, quick reference references/ install-locations.md — default paths, hyperframes.json config wiring-blocks.md — iframe inclusion, data attributes, positioning wiring-components.md — snippet merging (HTML, CSS, JS, timeline) discovery.md — manifest reading, item fields, available items table demo-html-pattern.md — why components ship demo.html, structure conventions examples/ add-block.md — worked example: data-chart block install + wiring add-component.md — worked example: shimmer-sweep component install + wiring ``` ## Why Phase B of the catalog plan (PR 10). Without this skill, agents using `hyperframes add` have to guess how to wire installed items into compositions. The skill encodes the iframe/snippet patterns so agents get it right on the first attempt. ## How - SKILL.md frontmatter triggers on: `hyperframes add`, "block", "component", `hyperframes.json` - References cover every step: discovery, install, wiring blocks (iframe), wiring components (snippet merge), and the demo.html convention - Two worked examples walk through complete install-to-preview workflows - Updated CLAUDE.md skills table + trigger rules, README.md skills table, docs/packages/cli.mdx ## Test plan - [x] `scripts/lint-skills.ts` passes (checked 4 skill files, no issues) - [x] `oxfmt --check` passes on all markdown files - [x] SKILL.md frontmatter has valid `name` and `description` - [x] All reference links in SKILL.md resolve to existing files - [x] CLAUDE.md, README.md, and docs CLI page updated with new skill
2026-04-14 16:27:24 -07:00
"pages": [
"reference/html-schema"
]
},
{
"group": "Contributing",
feat(skills): hyperframes-registry skill (#261) ## What New skill `hyperframes-registry` that teaches AI coding agents how to install and wire registry blocks and components into HyperFrames compositions. ### Skill structure ``` skills/hyperframes-registry/ SKILL.md — triggers, overview, quick reference references/ install-locations.md — default paths, hyperframes.json config wiring-blocks.md — iframe inclusion, data attributes, positioning wiring-components.md — snippet merging (HTML, CSS, JS, timeline) discovery.md — manifest reading, item fields, available items table demo-html-pattern.md — why components ship demo.html, structure conventions examples/ add-block.md — worked example: data-chart block install + wiring add-component.md — worked example: shimmer-sweep component install + wiring ``` ## Why Phase B of the catalog plan (PR 10). Without this skill, agents using `hyperframes add` have to guess how to wire installed items into compositions. The skill encodes the iframe/snippet patterns so agents get it right on the first attempt. ## How - SKILL.md frontmatter triggers on: `hyperframes add`, "block", "component", `hyperframes.json` - References cover every step: discovery, install, wiring blocks (iframe), wiring components (snippet merge), and the demo.html convention - Two worked examples walk through complete install-to-preview workflows - Updated CLAUDE.md skills table + trigger rules, README.md skills table, docs/packages/cli.mdx ## Test plan - [x] `scripts/lint-skills.ts` passes (checked 4 skill files, no issues) - [x] `oxfmt --check` passes on all markdown files - [x] SKILL.md frontmatter has valid `name` and `description` - [x] All reference links in SKILL.md resolve to existing files - [x] CLAUDE.md, README.md, and docs CLI page updated with new skill
2026-04-14 16:27:24 -07:00
"pages": [
"contributing",
"contributing/testing-local-changes"
]
}
]
}
]
},
"footer": {
"socials": {
"github": "https://github.com/heygen-com/hyperframes"
}
}
}