Agent SkillsRemocn/remocn › remocn

remocn

GitHub

为 Remotion 项目提供可复制粘贴的动画组件和 UI 原语。支持文本动画、转场、背景及 shadcn 风格 UI 模拟,通过 shadcn 安装,分为帧驱动动画和时间轴驱动 UI 两类,助力制作高质量视频内容。

skills/remocn/SKILL.md Remocn/remocn

Trigger Scenarios

构建 Remotion 视频或场景 添加动画、转场或背景效果 使用视频就绪的 UI 原语(如按钮、对话框)

Install

npx skills add Remocn/remocn --skill remocn -g -y
More Options

Use without installing

npx skills use Remocn/remocn@remocn

指定 Agent (Claude Code)

npx skills add Remocn/remocn --skill remocn -a claude-code -g -y

安装 repo 全部 skill

npx skills add Remocn/remocn --all -g -y

预览 repo 内 skill

npx skills add Remocn/remocn --list

SKILL.md

Frontmatter
{
    "name": "remocn",
    "description": "Build Remotion videos with remocn — copy-paste animation components and timeline-driven UI primitives from a shadcn registry. Use when composing a video or scene in a Remotion project, adding a single animation, transition, background, or UI-block sim, or reaching for a video-ready UI primitive (button, dialog, command menu). Activate for polished Remotion video work even when remocn isn't named."
}

remocn

Copy-paste components for Remotion videos. Components install via shadcn and land in components/remocn/ — you own the code.

Installation

Prerequisites: a Remotion project (npx create-video@latest).

# Add any component (namespaced shadcn registry)
shadcn add @remocn/blur-out-up

# Component lands at components/remocn/blur-out-up.tsx

@remocn/<name> is the canonical namespaced form (configured under registries in components.json). The plain registry URL https://remocn.dev/r/<name>.json also works.

Dependencies install automatically

Many components pull others via registryDependenciesshadcn installs them transitively. For example, shadcn add @remocn/typewriter also pulls @remocn/remocn-ui and @remocn/caret.

  • @remocn/remocn-ui is the shared core lib (timeline-fold hook, theme context, color math). Most UI Primitives depend on it. You rarely install it directly.

Two tiers

remocn has two kinds of components — they have different APIs:

  • Animation tier (remocn) — text animations, transitions, backgrounds, UI-block sims, brand/social cards, full compositions. Frame-driven. Shared props: speed (time multiplier), and for text: fontSize, color, fontWeight.
  • UI Primitives (remocn-ui) — timeline-driven shadcn-style primitives (button, dialog, select, command-menu, tooltip…). State-based props (state, style, variant, theme). No speed prop. Built on @remocn/remocn-ui.

Component categories

Pick by what you're building. The catalog is split one file per component under references/components/. Start at references/components/index.md — a router table grouped by these categories with a Use for / Avoid for signal per component. Scan it, pick candidates, then open only the references/components/<name>.md files you need (full props, example, all use / don't-use notes). Don't read every file.

Category Tier Use for
Text Animations remocn Reveal/replace/emphasize text (typewriter, blur-out-up, tracking-in, rolling-number, shimmer-sweep…)
Backgrounds & Effects remocn Animated foundations, cursors, one-shot effects (simulated-cursor, confetti, backdrop)
Shaders remocn WebGL shader backdrops, frame-driven for deterministic renders (shader-mesh-gradient, shader-warp, shader-voronoi, shader-god-rays, shader-metaballs…)
Transitions remocn TransitionSeries presentations between two scenes (whip-pan, push-through, focus-pull, grain-dissolve, wave-wipe…)
UI Blocks remocn Interface sims for product demos (terminal-simulator, glass-code-block, animated-bar-chart, progress-steps…)
AI & Social Cards remocn Brand/product card scenes (chat-gpt, claude-code, v0, github-stars, x-follow-card…)
UI Primitives remocn-ui shadcn-style primitives for video (button, dialog, select, command-menu, tooltip…)

Component patterns

Conventions differ by tier — don't assume animation-tier props on a primitive.

Animation tier (remocn)

  • Named Props interface per component (e.g. BlurOutUpProps).
  • speed?: number — global time multiplier (default 1), applied as frame * speed.
  • Text components: fontSize, color, fontWeight.
  • Transitions: lowercase factories (e.g. whipPan(props)) returning a TransitionPresentation — pass to TransitionSeries.Transition via presentation, pace with linearTiming / springTiming.
  • className?: string on the root.

UI Primitives (remocn-ui)

  • State-based, not speed-based: state (e.g. "open" / "closed"), style, variant, size, theme?: Partial<RemocnTheme>.
  • The opened/closed/active state is a pure function of the timeline (keyframed presets).
  • Compose modal-layer primitives (dialog, alert-dialog, drawer) with a trigger element — see each component's example.

Animation API

import { interpolate, spring, useCurrentFrame, useVideoConfig } from "remotion";

const opacity = interpolate(frame, [0, 30], [0, 1], { extrapolateRight: "clamp" });
const scale = spring({ fps, frame, config: { damping: 12, mass: 1, stiffness: 100 } });

// Deterministic randomness (NEVER Math.random())
import { random } from "@remotion/random";
const jitter = random(`seed-${frame}`);

Composition structure

import { Sequence, Series } from "remotion";

<Sequence from={30} durationInFrames={60}>
  <Typewriter text="npm install remocn" />
</Sequence>

<Series>
  <Series.Sequence durationInFrames={60}><SceneA /></Series.Sequence>
  <Series.Sequence durationInFrames={60}><SceneB /></Series.Sequence>
</Series>

Canvas & timing

  • Canvas standard: 1280×720 @ 30fps. Components are laid out for it.
  • Budget each Sequence around the component's natural length — the Length column in components/index.md (and each file's Natural length). Under-budgeting clips the animation; over-budgeting leaves dead air.
  • Tone matching: each catalog entry carries a vibe tag (tech/premium/data/clean/ playful/social) — pick components whose vibe fits the brand.
  • Palette & fonts: stay within the library's tokens (references/design.md → tokens) so your own elements don't clash.

Design defaults — avoid AI-slop

Your own additions (text, scene chrome, cards — not the prebuilt components) stay restrained: default tracking, sentence case, solid text color, subtle 1px elevation — no decorative letter-spacing, ALL-CAPS, gradient text-fills, or glow shadows. Never strip these traits from a component whose essence is the effect (tracking-in, social-card gradients, designed elevation).

Full do/avoid examples + design tokens: references/design.md. Motion quality (timing, anticipation, staging, easing): references/motion-principles.md.

Gotchas (remocn-specific)

  • Terminal scroll is instant — step-function translateY, never spring/ease the scroll.
  • overflow: hidden on split layouts — prevents content breakage during width animations.
  • Cursor blink is deterministicMath.floor(frame / 15) % 2 === 0, not intervals.
  • Static files go in public/ — load via staticFile('cursor.svg'), not imports.
  • Social cards render offlineavatarUrl="" / coverUrl="" fall back to gradients; no fetch.

General Remotion rules (no Math.random(), no setInterval, animate transform not top/left, load fonts before render) live in the remotion-best-practices skill.

Composing a video

Don't dump components — compose one story. When asked to build a full video ("make a product demo", "changelog video", "intro for my landing"):

  1. Decide the strategy — ready template vs compose from components vs build a new component. See references/anatomy.md §1.
  2. Follow the beats — a product demo is Hook → Positioning → Product reveal → Features → Proof → CTA (last two optional). See references/anatomy.md §2.
  3. Use the recipereferences/archetypes/index.md routes to per-archetype builds: content contract (infer → ask → placeholder), duration variants, beat→component slots, and a worked <TransitionSeries> skeleton.
  4. Pick each beat's component from references/components/index.md; match the vibe tag to the brand and budget its Sequence per Canvas & timing above.
  5. Check the quality bar — one accent, sentence-case kinetic type, real content, no glow halos, no feature-list enumeration. See references/anatomy.md §3.

Reference

  • references/anatomy.md — composing a full video: strategy (template/compose/new), the product-demo beats, and the good-vs-slop quality bar.
  • references/archetypes/index.md — router to per-archetype build recipes (product-demo flagship + changelog, feature-announcement, oss-showcase, cli-tool-demo, testimonial-reel, year-in-review, pricing-reveal, logo-bumper): content contract, duration variants, beat→slot map.
  • references/components/index.md — router table (all components, grouped by category, with Use for / Avoid for). Open references/components/<name>.md for one component's full props, example, and use / don't-use notes.
  • references/design.md — anti-slop design defaults (do/avoid) + design tokens (palette, fonts, canvas).
  • references/motion-principles.md — motion-design principles adapted to remocn + Remotion.
  • references/anti-patterns.md — common generation mistakes and their fixes.

Version History

  • f77e19e Current 2026-07-19 22:37

    移除了 environments 分类;重写技能描述以符合 written-great-skill 标准。

  • a7f3377 2026-07-05 18:21

Same Skill Collection

.agents/skills/ask-matt/SKILL.md
.agents/skills/claude-handoff/SKILL.md
.agents/skills/code-review/SKILL.md
.agents/skills/codebase-design/SKILL.md
.agents/skills/design-an-interface/SKILL.md
.agents/skills/diagnosing-bugs/SKILL.md
.agents/skills/domain-modeling/SKILL.md
.agents/skills/edit-article/SKILL.md
.agents/skills/git-guardrails-claude-code/SKILL.md
.agents/skills/grilling/SKILL.md
.agents/skills/handoff/SKILL.md
.agents/skills/implement/SKILL.md
.agents/skills/improve-codebase-architecture/SKILL.md
.agents/skills/loop-me/SKILL.md
.agents/skills/migrate-to-shoehorn/SKILL.md
.agents/skills/obsidian-vault/SKILL.md
.agents/skills/prototype/SKILL.md
.agents/skills/qa/SKILL.md
.agents/skills/request-refactor-plan/SKILL.md
.agents/skills/research/SKILL.md
.agents/skills/resolving-merge-conflicts/SKILL.md
.agents/skills/scaffold-exercises/SKILL.md
.agents/skills/setup-matt-pocock-skills/SKILL.md
.agents/skills/setup-pre-commit/SKILL.md
.agents/skills/tdd/SKILL.md
.agents/skills/teach/SKILL.md
.agents/skills/to-spec/SKILL.md
.agents/skills/to-tickets/SKILL.md
.agents/skills/triage/SKILL.md
.agents/skills/ubiquitous-language/SKILL.md
.agents/skills/wayfinder/SKILL.md
.agents/skills/wizard/SKILL.md
.agents/skills/writing-beats/SKILL.md
.agents/skills/writing-fragments/SKILL.md
.agents/skills/writing-great-skills/SKILL.md
.agents/skills/writing-shape/SKILL.md
.claude/skills/interactivity-best-practices/SKILL.md
agent/skills/ask-matt/SKILL.md
agent/skills/claude-handoff/SKILL.md
agent/skills/code-review/SKILL.md
agent/skills/codebase-design/SKILL.md
agent/skills/design-an-interface/SKILL.md
agent/skills/diagnosing-bugs/SKILL.md
agent/skills/domain-modeling/SKILL.md
agent/skills/edit-article/SKILL.md
agent/skills/git-guardrails-claude-code/SKILL.md
agent/skills/grilling/SKILL.md
agent/skills/handoff/SKILL.md
agent/skills/implement/SKILL.md
agent/skills/improve-codebase-architecture/SKILL.md
agent/skills/loop-me/SKILL.md
agent/skills/migrate-to-shoehorn/SKILL.md
agent/skills/obsidian-vault/SKILL.md
agent/skills/prototype/SKILL.md
agent/skills/qa/SKILL.md
agent/skills/request-refactor-plan/SKILL.md
agent/skills/research/SKILL.md
agent/skills/resolving-merge-conflicts/SKILL.md
agent/skills/scaffold-exercises/SKILL.md
agent/skills/setup-matt-pocock-skills/SKILL.md
agent/skills/setup-pre-commit/SKILL.md
agent/skills/tdd/SKILL.md
agent/skills/teach/SKILL.md
agent/skills/to-spec/SKILL.md
agent/skills/to-tickets/SKILL.md
agent/skills/triage/SKILL.md
agent/skills/ubiquitous-language/SKILL.md
agent/skills/wayfinder/SKILL.md
agent/skills/wizard/SKILL.md
agent/skills/writing-beats/SKILL.md
agent/skills/writing-fragments/SKILL.md
agent/skills/writing-great-skills/SKILL.md
agent/skills/writing-shape/SKILL.md
.agents/skills/grill-me/SKILL.md
.agents/skills/grill-with-docs/SKILL.md
agent/skills/grill-me/SKILL.md
agent/skills/grill-with-docs/SKILL.md

Metadata

Files
0
Version
f77e19e
Hash
5a6ef268
Indexed
2026-07-05 18:21

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-23 00:03
浙ICP备14020137号-1 $お客様$