OpenRive: A local-first editor for Rive animations

OpenRive: A local-first editor for Rive animations

OpenRive:一款 Rive 动画的本地优先编辑器

Rive is a powerful format for interactive motion, but the editing workflow is usually tied to a hosted product. I wanted an editor that could run locally, work without an account, and remain useful to both people and automation. That project is OpenRive: an open-source editor for Rive .riv files. Rive 是一种强大的交互式动画格式,但其编辑工作流通常绑定在托管产品上。我想要一款可以在本地运行、无需账户即可使用,且对人类和自动化工具同样友好的编辑器。这个项目就是 OpenRive:一款用于编辑 Rive .riv 文件的开源编辑器。

What OpenRive provides

OpenRive 提供的内容

  • A browser editor with design and animation workflows
  • 具备设计和动画工作流的浏览器编辑器
  • Desktop builds for macOS, Windows, and Linux
  • 适用于 macOS、Windows 和 Linux 的桌面构建版本
  • A CLI and terminal UI for scripted workflows
  • 用于脚本化工作流的 CLI(命令行界面)和终端 UI
  • An MCP server so AI assistants can create and edit animations
  • 一个 MCP 服务器,使 AI 助手能够创建和编辑动画
  • A REST API for integrations
  • 用于集成的 REST API
  • Self-hosting with Docker and PostgreSQL
  • 支持使用 Docker 和 PostgreSQL 进行自托管
  • Offline-friendly, local-first operation with no required login
  • 支持离线、本地优先的操作,无需登录

The editor is designed around the Rive file format rather than a separate proprietary document model. That makes round-tripping and interoperability important: files that are opened and saved should remain usable by the wider Rive ecosystem. 该编辑器围绕 Rive 文件格式设计,而非采用独立的专有文档模型。这使得往返处理(round-tripping)和互操作性变得至关重要:打开并保存后的文件应能继续在更广泛的 Rive 生态系统中使用。

One editing core, multiple interfaces

一个编辑核心,多种接口

OpenRive is a Bun workspace and Turborepo monorepo. The format and editing core lives in a DOM-free package, while the web UI, CLI, MCP server, and desktop app share the same editing API. That architecture means an operation added to the core can be exposed consistently in the UI and automation layers. It also gives contributors clear places to work: format support in packages/rive, editor behavior in apps/web, automation in apps/cli, and shared validation in packages/shared. OpenRive 是一个 Bun 工作区和 Turborepo 单体仓库。格式和编辑核心位于一个无 DOM 的包中,而 Web UI、CLI、MCP 服务器和桌面应用共享同一个编辑 API。这种架构意味着添加到核心的操作可以一致地呈现在 UI 和自动化层中。它也为贡献者提供了明确的工作区域:packages/rive 中的格式支持、apps/web 中的编辑器行为、apps/cli 中的自动化功能,以及 packages/shared 中的共享验证逻辑。

Try it locally

本地尝试

The quickest path is the hosted demo at openrive.upstand.dev. To run the project yourself, clone the repository and run bun install, then start it with bun run dev: 最快的方法是访问托管的演示地址 openrive.upstand.dev。若要自行运行该项目,请克隆仓库并运行 bun install,然后使用 bun run dev 启动:

git clone https://github.com/UpstandPlatform/OpenRive.git
cd OpenRive
bun install
bun run dev

Then open http://localhost:3000. 然后打开 http://localhost:3000。

Why make it open source?

为什么要开源?

Animation tools benefit from experimentation. A local-first editor makes it easier to inspect files, build integrations, run automation in a private environment, and contribute support for the parts of the Rive format that matter to you. The repository includes development, testing, self-hosting, CLI, MCP, and architecture guides. There are also beginner-friendly documentation tasks open for contributors, including refreshing the contributor quick start and auditing the keyboard-shortcut documentation. If you work with Rive files, build creative tooling, or want to explore animation workflows with AI agents, I would love feedback on GitHub. 动画工具受益于实验。本地优先的编辑器使得检查文件、构建集成、在私有环境中运行自动化,以及为你所关心的 Rive 格式部分贡献支持变得更加容易。该仓库包含了开发、测试、自托管、CLI、MCP 和架构指南。此外,还有面向贡献者的初学者友好型文档任务,包括更新贡献者快速入门指南和审计键盘快捷键文档。如果你从事 Rive 文件相关工作、构建创意工具,或者想探索 AI 代理的动画工作流,欢迎在 GitHub 上提供反馈。