跳到主要内容
项目档案库 / SDK

Hyperframes:基于 HTML 的 AI 友好型视频渲染框架 - 安装、使用与预制块指南

Hyperframes 是一个开源视频渲染框架,让你通过 HTML 数据属性创建视频合成。支持 AI 代理工作流、实时预览和确定性渲染。本文详细介绍项目定位、安装方式、使用方法和 50+ 预制块系统。

51,630TypeScriptStar 于 2026年4月17日2026年9月19日 更新

AI 总结

Hyperframes 是一个基于 HTML 的开源视频渲染框架,允许通过 HTML 数据属性定义视频合成,支持实时预览和确定性渲染,专为 AI 代理工作流设计。

中文项目介绍

Hyperframes 是一个创新的开源视频渲染框架,其核心理念是"Write HTML. Render video."。它允许开发者使用熟悉的 HTML 语言,配合特定的 data 属性来定义视频合成的时间轴、轨道、动画等要素,最终渲染成 MP4 视频文件。这种设计使得视频制作变得如同编写网页一样直观,特别适合自动化流程和 AI 代理操作。 传统视频制作通常需要专业的非线性编辑软件或复杂的编程接口,而 Hyperframes 解决了用 Web 技术创建视频内容的难题。它避免了专有 DSL 的学习成本,利用开发者已掌握的 HTML/CSS/JS 知识,结合 GSAP、Lottie 等成熟动画库,实现确定性的视频生成。对于 AI 代理而言,HTML 是其天然的输出格式,这使得 Hyperframes 成为 AI 驱动视频生产的理想平台。 该框架适用于多种场景:AI 代理自动生成产品介绍、教程视频、数据可视化内容;手动创建 HTML 视频合成进行精细控制;利用 50+ 预制块快速构建专业效果;以及需要可重复结果的自动化视频生成管道。从仓库结构可见,项目采用 monorepo 架构,使用 Bun 工具链,核心模块包括 CLI、Core、Producer、Player 和 Studio,支持 GSAP、Lottie、CSS、Three.js 等多种动画运行时。

详细信息与使用说明

1. 项目定位与用途

Hyperframes 是一个基于 HTML 的开源视频渲染框架,定位为"Write HTML. Render video."的解决方案。其核心用途是让用户能够通过编写 HTML 文件并添加特定的 data 属性来定义视频合成,包括元素的时间轴、持续时间、轨道位置等参数,然后将其渲染为 MP4 视频文件。框架采用 HTML-native 设计,无需学习专有 DSL,直接利用 Web 标准技术构建视频内容。同时,它专为 AI 代理工作流优化,提供 CLI 工具和技能集成,使 AI 能够高效地生成和迭代视频内容。项目还提供 Studio 开发环境,支持实时预览和热重载,提升开发体验。

2. 解决的问题

Hyperframes 主要解决传统视频制作中技术门槛高、自动化困难的问题。传统方法依赖专业视频编辑软件,难以集成到开发流程;而编程生成视频通常需要复杂的图形库或专有语言。Hyperframes 通过将视频合成定义为 HTML 结构,利用 Web 开发者已掌握的技能降低门槛。对于 AI 代理,HTML 是其自然输出格式,无需特殊适配即可生成视频描述。确定性渲染确保相同输入产生相同输出,解决自动化管道中的可重复性问题。Frame Adapter 模式允许集成多种动画运行时(GSAP、Lottie 等),避免被单一技术栈锁定。

3. 适用场景

该框架适用于多种视频制作场景:AI 代理自动化生成产品介绍、教程视频、数据可视化内容;手动创建 HTML 视频合成进行精细控制;利用预制块库快速构建专业效果,包括社交平台覆盖层(Instagram、TikTok)、着色器过渡、数据图表、UI 组件等;以及需要批量生产且结果可重复的自动化视频管道。其 HTML-based 特性也适合需要将网页内容转换为视频的场景,如网站演示、应用展示。对于熟悉 Web 技术的团队,可快速上手并融入现有开发流程。

4. 安装方式

Hyperframes 提供两种主要安装方式。推荐方式是通过 AI 代理安装:运行 `npx skills add heygen-com/hyperframes`,这将把 Hyperframes 技能添加到支持的 AI 代理(如 Claude Code、Cursor、Gemini CLI、Codex)中,使其能够生成正确的视频合成代码。手动方式则是直接初始化项目:`npx hyperframes init my-video` 创建项目结构,该命令会自动安装所需技能。环境要求为 Node.js >= 22 和 FFmpeg。开发 monorepo 需使用 Bun 工具链,运行 `bun run dev` 启动 Studio,`bun run build` 构建所有包。基本使用无需环境变量,可选 GEMINI_API_KEY 用于 AI 图像标注功能。

5. 使用方式

使用 Hyperframes 的核心是定义 HTML 合成文件。在 HTML 中,根容器需设置 `data-composition-id`、`data-width`、`data-height` 等属性,子元素(视频、图片、音频等)通过 `data-start`、`data-duration`、`data-track-index` 控制时间轴和轨道。预览时运行 `npx hyperframes preview`,在浏览器中实时查看并支持热重载;渲染时运行 `npx hyperframes render` 生成 MP4 文件。预制块可通过 `npx hyperframes add <block-name>` 安装,然后在宿主合成中通过 `data-composition-src` 引用。与 AI 代理协作时,使用 `/hyperframes`、`/hyperframes-cli`、`/gsap` 等命令获取帮助。

6. 补充说明与实现特点

Hyperframes 采用 monorepo 架构,使用 Bun 工作区管理多个包:@hyperframes/cli 提供命令行接口,@hyperframes/core 负责合成解析和动画协调,@hyperframes/producer 管理渲染队列,@hyperframes/player 实现浏览器预览,@hyperframes/studio 提供开发 UI。框架支持 Frame Adapter 模式,可集成 GSAP、Lottie、CSS 动画、Three.js 等不同动画运行时。渲染基于 FFmpeg 实现确定性输出,确保可重复性。项目包含 50+ 预制块,涵盖过渡效果、数据可视化、社交覆盖等类别,每个块都是独立的 HTML composition,通过 MDX 文档描述。测试和格式化使用 oxlint、oxfmt、knip 等工具,commit 遵循 conventional 规范。

思维导图

Hyperframes
核心特性
HTML-native 设计
AI-first 工作流
确定性渲染
Frame Adapter 模式
架构模块
CLI:init/add/preview/render
Core:合成解析与动画协调
Producer:渲染队列管理
Player:浏览器实时预览
Studio:开发环境与热重载
预制块系统
50+ 现成组件
过渡效果(着色器/模糊/扭曲)
数据可视化(图表/流程图)
社交覆盖(Instagram/TikTok)
MDX 文档与独立 composition
工作流程
AI 代理安装:npx skills add
项目初始化:npx hyperframes init
实时预览:npx hyperframes preview
视频渲染:npx hyperframes render
预制块添加:npx hyperframes add
技术栈
Bun 工具链与 Monorepo
Node.js 22+ 与 FFmpeg
GSAP / Lottie 动画
Three.js / CSS 动画
HTML data 属性驱动

常见问题

Hyperframes 是什么?

Hyperframes 是一个基于 HTML 的开源视频渲染框架,允许通过编写 HTML 文件并添加 data 属性来定义视频合成,然后渲染为 MP4 视频。它专为 AI 代理工作流设计,支持实时预览和确定性渲染,无需学习专有 DSL。

如何安装 Hyperframes?

推荐通过 AI 代理安装:运行 `npx skills add heygen-com/hyperframes`。或手动初始化项目:`npx hyperframes init my-video`。需要 Node.js >= 22 和 FFmpeg。开发 monorepo 需使用 Bun 工具链。

如何渲染视频?

在项目目录中运行 `npx hyperframes render` 命令,会将 HTML 合成渲染为 MP4 视频文件。预览可使用 `npx hyperframes preview` 在浏览器中实时查看并支持热重载。

支持哪些动画技术?

Hyperframes 采用 Frame Adapter 模式,支持 GSAP、Lottie、CSS 动画、Three.js 等多种动画运行时,可在 HTML 合成中灵活使用,无需被单一技术栈锁定。

什么是预制块?如何使用?

预制块是 50+ 现成的视频组件(如过渡、数据图表、社交覆盖),通过 `npx hyperframes add <block-name>` 安装,然后在 HTML 中通过 `data-composition-src` 引用即可使用,每个块都有独立的 MDX 文档说明。