包与扩展

Hypit 把视频需要什么,与用什么代码和服务来实现它,分开处理。新图形、模型或 API 源由包提供、由项目选择;执行系统负责运行由此形成的依赖图。

各部分的职责

组成部分职责在哪里被选择
作者组件把作者输入变成媒体请求、视觉行为或其他图输出源文件 import
模型定义一次精确的生成请求及其输出源文件 import
Provider Endpoint通过 API 或本地工具执行受支持的请求运行时配置
凭据存储为某个 Endpoint 解析具名凭据运行时配置
结果仓库保存项目的构建记录与产出文件项目结果配置
发行版提供可执行应用与官方包已安装的 @hypit/hypit

例如:模型描述「我要一段视频」,Provider 把该请求映射到某个服务;榜单组件描述「把每个对象放到它那一行,再把图标移动到名次位置」,而绘制与运动由组件的代码提供。

为什么要这样分

  • — 换模型不动脚本:请求与实现分离
  • — 换供应商不动视频:Endpoint 属于运行时配置
  • — 组件可复用:接口与实现都归包所有

FAQ

必须自己写组件吗?

不必。官方发行版已含常用组件;只有新图形或新服务才需要写包。

包可以只在一个项目里用吗?

可以。项目内 packages/ 目录下的包只服务该项目。

第三方服务怎么接?

通过公开 SDK 写 Provider,路径与写视觉组件一致。

继续阅读