snapcn
20 components
DocsComponentsTemplatesVideo EditorShowcaseMarketplace

Getting started

IntroductionInstallationAgent skill
GitHub

Star snapcn

Free, open-source components.

Production-ready Remotion animations, transitions and backgrounds — you own the code.

Star on GitHub

MIT licensed · own your code.

© 2026 snapcn

DocsComponentsTemplatesVideo EditorShowcaseMarketplace
Getting startedIntroductionInstallationAgent skill

Captions

Burned-in, transcript-timed subtitles with word-pop and karaoke styles and safe-area presets for 16:9, 1:1 and 9:16.

Use captions when someone is speaking and the words need to be on screen — talking-head clips, voiceover demos, anything watched muted on a feed. These components take a timed transcript and render frame-accurate, burned-in subtitles inside per-aspect safe areas. For decorative headlines and titles, use Text & Titles instead.

The components

2 components in Captions. Each card plays its own default scene — open one for its props, the source file shadcn add writes, and a player you can scrub frame by frame.

Install

Components are installed into your own Remotion project with the shadcn CLI, and the file it writes is yours to edit — there is no snapcn package to depend on. Set the registry up once, then add components by name:

pnpm
$ pnpm dlx shadcn@latest add @snap-cn/word-captions

That writes components/snap-cn/word-captions.tsx. Swap the name for any other component on this page.

Put it on screen

Every prop has a working default, so the component renders as soon as it is mounted — give it a composition and you have a video:

// src/Root.tsximport { Composition } from "remotion";import { WordCaptions } from "@/components/snap-cn/word-captions";export const RemotionRoot = () => (  <Composition    id="WordCaptions"    component={WordCaptions}    durationInFrames={96}    fps={30}    width={1280}    height={720}  />);

durationInFrames is the length WordCaptions is choreographed for — 96 frames at 30 fps. Cut it short and the animation is cut short with it. To use one as a beat inside a longer video, mount it in a <Sequence>of the same length instead of giving it a composition of its own. Each component's page lists its props; they are all plain values, so anything you can compute you can animate.

Next

  • Installation — the one-time registry setup, and the Remotion project it needs.
  • All components — the full gallery, filterable across every category.
  • Agent skill — hand snapcn to a coding agent so it picks the right component itself.