ITADN
jbilcke-hf/clapper
jbilcke-hf/clapper · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

title: Clapper emoji: 🎬 sdk: docker colorFrom: gray colorTo: gray pinned: true app_port: 3000 disable_embedding: false hf_oauth: false header: mini short_description: 🎬 Clapper

Clapper 目前处于非常早期的阶段。没有教程,部分 UI 功能和按钮无法使用,某些工作流已损坏,且没有测试。 希望改变这一现状?欢迎加入我们的开源社区,帮助构建 Clapper!

Demo|600

资金

Clapper 目前没有获得资金!(暂时?)但你可以请我喝杯咖啡 🫶

Buy Me A Coffee

简介

🎬 Clapper 是一个开源的 AI 故事可视化工具。

原型设计于 一年前,Clapper 并非旨在取代传统的视频编辑器或使用 3D 场景作为输入的现代 AI 编辑器。

Clapper 的理念是让任何人都能通过交互式、迭代式和直观的过程,利用 AI 创建视频,无需外部工具、电影制作或 AI 工程技能。

在 Clapper 中,你并不直接编辑视频和音频文件序列,而是使用角色、地点、天气、时间段、风格等高层抽象概念,对你的故事进行迭代(在你的 AI 助手帮助下)。

为此,我还在开发一种导演模式(Director's Mode),在该模式下,你只需将视频设为全屏,舒适地坐在你的导演椅(或沙发)上,向你的 AI 现场助理下达指令来制作你的电影。

公开 Alpha 访问

Clapper 的公开实例目前托管在 Hugging Face,你可以在 Clapper.app 上试用

开源理念

整个项目都是开源的。

要参与,请加入我们的 Discord

路线图也是公开的:Clapper 路线图

徽章

  • 构建和测试状态:E2E & Unit Tests

  • 赞助功能:(由于赏金提供商的问题暂时禁用)

赏金赞助商

这些慷慨的赞助商正在支付代码赏金:

想要贡献?

面向用户或企业

赞助特定功能

!! 注意:我们最初用于赏金的平台目前存在问题。我们正在寻找替代方案。 !!

面向开发者

许可证

Clapper 采用 GPL v3 许可证,更多信息请参见 LICENCE 文件。这与 ComfyUI 或 Blender 等应用的许可证类似。

安装

先决条件

作为先决条件,您需要安装 git lfs(参见项目根目录下的 .gitattributes 文件):

git lfs install

您还需要安装 Bun

Clapper 已在 Node 20.17.0 上进行了测试。

为确保您使用此版本,您可以使用 NVM 来激活它:

nvm install
nvm use

如果您发现 Clapper 可以在更新(稳定)版本的 Node 上运行,或者有更好的版本管理建议,请提交一个工单。

安装

安装依赖项。

--include=optional 用于确保可选依赖项已安装(预构建的与您的系统兼容的原生模块)

bun i

您可以运行以下命令来构建应用程序,确保所有类型一致且正确设置:

npm run build

运行 Web 应用

然后运行实际的应用程序,首次输入此命令后访问 localhost:3000 时,应用程序将进行编译,这可能需要一分钟(例如,字面意义上的:Compiled / in 52.6s (6372 modules)

bun run dev

使用 Electron 运行应用

Electron 构建正在进行中。

仍有一些问题需要调试和解决,但如果你是开发者,可以通过以下方式在 Electron 中启动 Clapper 进行尝试:

cd packages/app
bun run electron:start

如果这对你不起作用(存在 node-gyp、setuptools、distutils 等问题),你可能需要运行:

python3 -m pip install --break-system-packages setuptools

你还可以通过输入以下命令为你的操作系统构建 Clapper:

cd packages/app
bun run electron:make

你可能会在末尾看到一条用红色显示的 DeprecationWarning 消息,但这只是一个警告,只需打开 ./out/make 检查构建是否成功即可。

Code conventions

我已配置 Prettier 和 ESLint,它们使用一些基本规则(如果你愿意,可以提出新规则)

Testing

要运行所有测试(单元测试和 e2e 测试),请运行:

bun run test

这不是瞬间完成的:playwright 在最初可能会看起来什么都没做。

@jbilcke-hf 正在努力添加更多测试,并将同时担任“QA 工程师”。

单元测试

注意:我刚刚添加了 Vitest,因此目前只有少数几个测试。

要在不监视的情况下运行测试,请输入:

cd packages/app
bun run test:unit:ci

要使用监视模式运行测试,请输入:

cd packages/app
bun run test:unit:watch

端到端测试

注意:我刚刚添加了 Playwright,但我们目前还没有真正的测试。

请注意,由于应用程序需要 30~60 秒(取决于您的计算机速度)进行构建,运行这些测试可能需要一些时间。

bun run test:e2e

更多 Playwright 命令: bunx playwright test 运行端到端测试。

bunx playwright test --ui 启动交互式 UI 模式。

bunx playwright test --project=chromium 仅在桌面版 Chrome 上运行测试。

bunx playwright test example 在特定文件中运行测试。

bunx playwright test --debug 以调试模式运行测试。

bunx playwright codegen 使用 Codegen 自动生成测试。

我们建议您从输入以下内容开始:

`bunx playwright test`

架构

Arch|800

为了方便起见,您可以在运行时(在浏览器的 JS 控制台中)通过输入 useUI.getState(), useIO.getState() 等来访问和检查任何服务