Rive Analyzer
БесплатноНе проверенEnables AI assistants to inspect, validate, control, and ship Rive animation files with 11 tools for parsing, scanning, generating types, comparing files, and m
Описание
Enables AI assistants to inspect, validate, control, and ship Rive animation files with 11 tools for parsing, scanning, generating types, comparing files, and more.
README
v1.1.0 — "Living Canvas"
Where your animation goes from a file to a living product.
Inspect, validate, control, and ship Rive .riv animation files — from the terminal, AI assistants, or a visual playground. The complete toolchain for teams that build with Rive at scale.
What's New in v1.1.0 — "Living Canvas"
| Area | Feature |
|---|---|
| Parser | Animation loopType — oneShot / loop / pingPong |
| Parser | workStart / workEnd frame range per animation |
| Parser | ViewModel extraction — real data from viewModelCount() / getProperties() |
| Parser | DataEnum extraction — full enum names and values |
| CLI | list-assets — enumerate embedded/CDN images, fonts, audio |
| CLI | init — scaffold .rive-playground/ project directory |
| CLI | contract-generate — generate .rive-contract.yaml from .riv |
| CLI | contract-validate — validate .riv against contract (CI-friendly) |
| CLI | generate-platform — codegen for Swift, Kotlin, JSON Schema, Zod, Dart |
| CLI | compare — diff two .riv files, detect breaking changes |
| MCP | 5 new tools: list-rive-assets, generate-rive-contract, validate-rive-contract, generate-platform-types, compare-rive-files |
| Playground | Events Log Panel — real-time Rive event stream |
| Playground | Preset Library — save/load/apply named configurations |
| Playground | URL deep-linking — ?file=<url>&artboard=Main&sm=... |
| Playground | Keyboard shortcuts — Space play/pause, R reset, Ctrl+S save preset |
| Playground | Error toasts — surface silent failures visually |
| Infra | Vitest test suite (16 tests) |
| Infra | .rive-playground/ project config directory |
Overview
rive-analyzer CLI Terminal-first inspection, codegen, validation
MCP Server AI assistant integration (Claude, OpenCode)
Rive Playground Visual editor + preset library + event log
.rive-playground/ Project config — presets, contracts (git-trackable)
Installation
cd /path/to/rive-mcp-analyzer
npm install
npm run build
npm link # optional: global CLI install
CLI Reference
inspect
rive-analyzer inspect ./animation.riv
rive-analyzer inspect ./animation.riv --json
scan
rive-analyzer scan ./public/
validate
rive-analyzer validate ./animation.riv ./src/constants/rive.ts
generate-types
rive-analyzer generate-types ./animation.riv -o ./src/rive-generated.ts
generate-platform
rive-analyzer generate-platform ./animation.riv --target swift
rive-analyzer generate-platform ./animation.riv --target kotlin -o RiveConstants.kt
rive-analyzer generate-platform ./animation.riv --target json-schema
rive-analyzer generate-platform ./animation.riv --target zod
rive-analyzer generate-platform ./animation.riv --target dart
contract-generate
rive-analyzer contract-generate ./animation.riv -o .rive-playground/contracts/animation.yaml
Contract example:
version: 1.1.0
file: animation.riv
artboard: Main
stateMachine: Main SM
inputs:
speed:
type: number
min: 0
max: 10
description: "Animation speed multiplier"
isVisible:
type: boolean
RESET:
type: trigger
contract-validate
rive-analyzer contract-validate ./animation.riv ./animation.rive-contract.yaml
# Exits 1 if: input removed, type changed, artboard renamed
compare
rive-analyzer compare ./animation-v1.riv ./animation-v2.riv
# Exits 1 on breaking changes — CI-safe
list-assets
rive-analyzer list-assets ./animation.riv
export-fields
rive-analyzer export-fields ./animation.riv --json
init
rive-analyzer init
# Creates: .rive-playground/{presets,contracts,schedules,config.json}
watch
rive-analyzer watch "./public/**/*.riv"
MCP Server (11 tools)
node dist/mcp.js
Add to Claude Desktop:
{
"mcpServers": {
"rive-analyzer": {
"command": "node",
"args": ["/absolute/path/to/rive-mcp-analyzer/dist/mcp.js"]
}
}
}
| Tool | Description |
|---|---|
inspect-rive |
Parse .riv — artboards, SMs, animations |
scan-rive-files |
Scan directory recursively |
validate-rive-config |
Check JS/TS config against .riv |
generate-rive-types |
TypeScript constants |
watch-rive-files |
Watch for changes |
export-rive-fields |
Deep extract ViewModels, DataEnums |
list-rive-assets |
Enumerate embedded/CDN assets |
generate-rive-contract |
Generate .rive-contract.yaml |
validate-rive-contract |
Validate .riv against contract |
generate-platform-types |
Swift/Kotlin/JSON Schema/Zod/Dart |
compare-rive-files |
Diff two files, detect breaking changes |
Playground
cd playground
npm install
npm run dev
# Open http://localhost:5173
Panels
| Panel | What it does |
|---|---|
| Artboard | Select artboard and animation |
| State Machine | Live boolean/number/trigger controls |
| ViewModel | All property types with live editing |
| Text Runs | Edit text content, auto-discover from VMs |
| Events | Real-time Rive event log |
| Presets | Save / load / apply named configurations |
| Export | JSON + Markdown export |
Keyboard Shortcuts
| Key | Action |
|---|---|
Space |
Play / Pause |
R |
Reset animation |
Ctrl/Cmd + S |
Save current state as preset |
Ctrl + Scroll |
Zoom canvas |
Alt + Drag |
Pan canvas |
Alt + Double-click |
Reset view |
URL Deep-linking
http://localhost:5173?file=https://cdn.example.com/animation.riv&artboard=Main&sm=Main+SM
Rive Contract System
The safety net between designers and developers. Define constraints on inputs — validate on every CI run.
# 1. Generate contract scaffold from .riv
rive-analyzer contract-generate hero.riv -o .rive-playground/contracts/hero.yaml
# 2. Edit: add min/max, required, descriptions
# 3. Validate in CI
rive-analyzer contract-validate hero.riv .rive-playground/contracts/hero.yaml
Project Structure
src/
cli.ts CLI (Commander + Clack, banner + NhoNH signature)
mcp.ts MCP server (11 tools)
parser/riveParser.ts WASM headless parser
tools/
contract.ts Contract system (YAML + Zod)
compareFiles.ts Breaking change detection
generateMultiplatform.ts Swift/Kotlin/JSON Schema/Zod/Dart codegen
listAssets.ts Asset enumeration
exportFields.ts ViewModel/DataEnum extraction
[inspect, scan, validate, generateTypes, watch].ts
ui/theme.ts CLI design system
ui/banner.ts ASCII art + NhoNH signature
playground/src/
hooks/useRivePlayground.ts Core state + event capture
hooks/usePresets.ts localStorage preset library
components/panels/
EventsPanel.tsx Real-time event log
PresetsPanel.tsx Save/load configurations
components/Toast.tsx Error notifications
types.ts RiveEvent, Preset, PlaygroundState
.rive-playground/ Git-trackable project config
presets/ Named configuration snapshots
contracts/ .rive-contract.yaml files
schedules/ (v1.2.0)
Roadmap
| Version | Theme | Highlights |
|---|---|---|
| v1.1.0 | Living Canvas | Contract system, multi-platform codegen, preset library, events |
| v1.2.0 | Living Server | LiveConfig HTTP+WS, Config Scheduler, MCP-Playground bridge |
| v1.3.0 | Intelligence | AI Narrator, AI Config Assistant (opt-in), SM Visual Graph |
Built by NhoNH · rive-analyzer · github.com/hoainho
Установка Rive Analyzer
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/nano-step/rive-playgroundFAQ
Rive Analyzer MCP бесплатный?
Да, Rive Analyzer MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Rive Analyzer?
Нет, Rive Analyzer работает без API-ключей и переменных окружения.
Rive Analyzer — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Rive Analyzer в Claude Desktop, Claude Code или Cursor?
Открой Rive Analyzer на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare Rive Analyzer with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
