Skip to content

Docs: Update Elements submission guidelines#8628

Merged
samohovets merged 1 commit into
mainfrom
docs/elements-guidelines-interactivity
Jun 22, 2026
Merged

Docs: Update Elements submission guidelines#8628
samohovets merged 1 commit into
mainfrom
docs/elements-guidelines-interactivity

Conversation

@samohovets

Copy link
Copy Markdown
Member

Summary

  • Rework Elements submission guidelines around Elements as Studio-friendly building blocks instead of full compositions
  • Move preview dimensions/FPS/duration into the hosted docs page defaults
  • Update the Elements template, lower-third example, and format tests to match the building-block model

Validation

  • cd packages/docs && bunx oxfmt src --write
  • bun test packages/docs/src/test/elements.test.ts
  • bun run build
  • bun run stylecheck (fails in existing template-react-router#lint generated types: Generic type 'GetAnnotations' requires 1 type argument(s))

@vercel

vercel Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
bugs Ready Ready Preview, Comment Jun 22, 2026 2:50pm
remotion Ready Ready Preview, Comment Jun 22, 2026 2:50pm

Request Review

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed changes — Reworked Elements submission guidelines, template, and examples to position Elements as <Sequence>-wrapped building blocks rather than full <Composition>-based demos. The <ElementPage> component now has defaults for preview dimensions, so Element authors only need to export a single React component.

  • ElementPage props become optional with defaultswidth, height, fps, and durationInFrames now default to 1920×1080 at 30fps for 120 frames, removing the need for Element authors to export these constants.
  • Template switches from <Composition> to <Sequence> — the elements-template now wraps content in <Sequence width={1080} height={1080}> and drops the RemotionRoot composition wrapper and all exported dimension constants.
  • Lower-third example updated to match — uses <Sequence width={900} height={260}>, reads durationInFrames from useVideoConfig() for the exit animation (adapts to the host composition's duration), and adds a subtitle line with an animated accent bar.
  • Submission guidelines rewritten — emphasizes the building-block model, interactivity (<Interactive.Div>), and the hosted-page-provided preview dimensions. Removes the old RemotionRoot / exported-constants requirement.
  • Tests flipped to negative assertions — elements tests now assert that source files do NOT export durationInFrames, fps, width, height, or RemotionRoot, and do NOT contain <Composition.

✅ No new issues found.

All 9 elements tests pass. The Interactive symbol and Interactive.Div are verified to be valid exports from remotion. The lower-third exit animation correctly adapts to the host composition's duration via useVideoConfig().durationInFrames.

Pullfrog  | View workflow run | Using DeepSeek Pro (free via Pullfrog for OSS) | 𝕏

@samohovets samohovets merged commit acdb85d into main Jun 22, 2026
17 checks passed
@samohovets samohovets deleted the docs/elements-guidelines-interactivity branch June 22, 2026 15:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant