BlockDex

Components

Registries

Free blocks

Method

BlockDex

Components

Registries

Free blocks

Method

Open API

BlockDex

Components

Registries

Free blocks

Method

Open API

Components/remotionui/comment-callout

comment-callout

remotionui/comment-callout
FreeBlock

Viewer comment answered on screen: it lands from the feed, the ask is marked up, the creator hearts it, and the reply is typed and sent

Live preview

live · rendered by the registry
Rendered by remotionui on their own page — this is the component running, not a screenshot of it.

Install it

npx shadcn@latest add https://remotionui.com/r/comment-callout.json

Source

registry/bases/default/scenes/comment-callout/index.tsxremotionui.com/r/comment-callout.json · first 6 KB
1import { loadFont } from "@remotion/google-fonts/Inter";
2import { interpolate, spring, useCurrentFrame, useVideoConfig } from "remotion";
3import { stageScale } from "@/remotion/lib/ai-composer-utils";
4import { CODE_THEMES } from "@/remotion/lib/code-syntax";
5import { EASING } from "@/remotion/lib/motion-tokens";
6import { markEmphasis, markerEdges } from "@/remotion/lib/text-emphasis";
7
8const { fontFamily } = loadFont("normal", {
9 weights: ["400", "500", "600", "700"],
10 subsets: ["latin"],
11});
12
13/** Reference stage the card is laid out against, then uniformly scaled. */
14const REF_WIDTH = 1280;
15const REF_HEIGHT = 720;
16
17const CARD_WIDTH = 840;
18const AVATAR = 68;
19const BODY_SIZE = 40;
20const BODY_LINE = 1.2;
21
22/** Characters per second the reply is typed at. */
23const REPLY_CPS = 34;
24
25export type CommentCalloutProps = {
26 /** The viewer comment being answered. */
27 body?: string;
28 /** Display name of the commenter. */
29 author?: string;
30 /** Social handle, also used on the reply line. */
31 handle?: string;
32 /** Avatar initials. Falls back to the first two letters of `author`. */
33 initials?: string;
34 /** Relative time shown next to the handle, e.g. "2h". */
35 timestamp?: string;
36 /**
37 * Substring of `body` to mark up as the creator emphasises the ask.
38 * Matched case-insensitively; omit to skip the highlight beat.
39 */
40 highlight?: string;
41 /** The answer typed back. Omit to end the scene on the comment itself. */
42 reply?: string;
43 /** Label above the composer. */
44 replyLabel?: string;
45 /** Like count before the creator hearts the comment. */
46 likes?: number;
47 accentColor?: string;
48 /** Overrides the page background behind the card. */
49 backgroundColor?: string;
50 theme?: "dark" | "light";
51 /** Animation speed multiplier. */
52 speed?: number;
53};
54
55/** Drawn, not typed — emoji render inconsistently across platforms. */
56const Heart: React.FC<{ size: number; color: string; fill: number }> = ({
57 size,
58 color,
59 fill,
60}) => (
61 <svg width={size} height={size} viewBox="0 0 24 24" fill="none">
62 <path
63 d="M12 20.2s-7.4-4.6-7.4-9.6a4.2 4.2 0 0 1 7.4-2.7 4.2 4.2 0 0 1 7.4 2.7c0 5-7.4 9.6-7.4 9.6Z"
64 stroke={color}
65 strokeWidth={1.8}
66 strokeLinejoin="round"
67 fill={color}
68 fillOpacity={fill}
69 />
70 </svg>
71);
72
73const Reply: React.FC<{ size: number; color: string }> = ({ size, color }) => (
74 <svg width={size} height={size} viewBox="0 0 24 24" fill="none">
75 <path
76// … truncated

Facts

Registry
remotionui
Type
registry:block
Access
Free
Files written
0
Licence
MIT
First indexed
2026-08-07
Last confirmed
3 days ago

Go to the source

Docs on remotionui remotionui.com riaz37/remotion-ui on GitHub Raw registry item This item as JSON

More from remotionui

All 127 items
Same registry, same kind — the ones you would have found next
ComponentRegistryKindAccessInstallsCommand
ai-composer-showcaseai-composer-showcaseremotionuiBlocksFreeno deps
ai-generation-canvasai-generation-canvasremotionuiBlocksFreeno deps
animated-bar-chartanimated-bar-chartremotionuiBlocksFreeno deps
audiogram-sceneaudiogram-sceneremotionuiBlocksFreeno deps
auto-fit-titleauto-fit-titleremotionuiBlocksFreeno deps
b-roll-stackb-roll-stackremotionuiBlocksFreeno deps
bento-panbento-panremotionuiBlocksFreeno deps
browser-flowbrowser-flowremotionuiBlocksFreeno deps
BlockDex

Built by

Kynth Studios

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studios

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studios

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex