D

docs-demo

by @remotion-devv
4.3(27)

Embed interactive component demos in Remotion documentation, supporting real-time preview and playback control, enabling users to intuitively understand API usage.

reactdocumentationui-componentsinteractive-demosGitHub
Installation
npx skills add https://github.com/remotion-dev/remotion --skill docs-demo
compare_arrows

Before / After Comparison

1 组
Before

Manually recording GIFs or writing static code examples requires re-screenshotting and replacement for every update, leading to high maintenance costs and a lack of interactive experience for users.

After

Directly embed runnable Remotion components in documents, supporting playback control and real-time preview. Code updates synchronize automatically, allowing users to directly interact and understand the API.

SKILL.md

docs-demo

Adding an Interactive Demo to Docs

Interactive demos render a Remotion composition inline in documentation pages using @remotion/player. They live in packages/docs/components/demos/.

Steps

Create a component in packages/docs/components/demos/ (e.g. MyDemo.tsx). It should be a standard React component using Remotion hooks like useCurrentFrame() and useVideoConfig().

Register the demo in packages/docs/components/demos/types.ts:

Import the component

  • Export a DemoType object with these fields:

id: unique string used in <Demo type="..." />

  • comp: the React component

  • compWidth / compHeight: canvas dimensions (e.g. 1280x720)

  • fps: frame rate (typically 30)

  • durationInFrames: animation length

  • autoPlay: whether it plays automatically

  • options: array of interactive controls (can be empty [])

Add to the demos array in packages/docs/components/demos/index.tsx:

Import the demo constant from ./types

  • Add it to the demos array

Use in MDX with <Demo type="your-id" />

Options

Options add interactive controls below the player. Each option needs name and optional ('no', 'default-enabled', or 'default-disabled').

Supported types:

  • type: 'numeric' — slider with min, max, step, default

  • type: 'boolean' — checkbox with default

  • type: 'enum' — dropdown with values array and default

  • type: 'string' — text input with default

Option values are passed to the component as inputProps. Access them as regular React props.

Example registration

export const myDemo: DemoType = {
  comp: MyDemoComp,
  compHeight: 720,
  compWidth: 1280,
  durationInFrames: 150,
  fps: 30,
  id: 'my-demo',
  autoPlay: true,
  options: [],
};

Weekly Installs278Repositoryremotion-dev/remotionGitHub Stars40.8KFirst SeenJan 31, 2026Security AuditsGen Agent Trust HubPassSocketPassSnykPassInstalled onopencode231codex229gemini-cli225claude-code222github-copilot219amp215

User Reviews (0)

Write a Review

Effect
Usability
Docs
Compatibility

No reviews yet

Statistics

Installs2.4K
Rating4.3 / 5.0
Version
Updated2026年10月11日
Comparisons1

User Rating

4.3(27)
5
78%
4
22%
3
0%
2
0%
1
0%

Rate this Skill

0.0

Compatible Platforms

🔧Claude Code

Timeline

Created2026年3月27日
Last Updated2026年10月11日
🎁 Agent Knowledge Cards
Survey