stitch-remotion
Generate walkthrough videos from Stitch projects using Remotion. Use when the user wants a video demo, walkthrough, or presentation of Stitch-designed screens. Retrieves screenshots via Stitch MCP, builds a Remotion composition with transitions (fade, slide), zoom animations, and text overlays per screen.
Best use case
stitch-remotion is best used when you need a repeatable AI agent workflow instead of a one-off prompt. It is especially useful for teams working in multi. Generate walkthrough videos from Stitch projects using Remotion. Use when the user wants a video demo, walkthrough, or presentation of Stitch-designed screens. Retrieves screenshots via Stitch MCP, builds a Remotion composition with transitions (fade, slide), zoom animations, and text overlays per screen.
Generate walkthrough videos from Stitch projects using Remotion. Use when the user wants a video demo, walkthrough, or presentation of Stitch-designed screens. Retrieves screenshots via Stitch MCP, builds a Remotion composition with transitions (fade, slide), zoom animations, and text overlays per screen.
Users should expect a more consistent workflow output, faster repeated execution, and less time spent rewriting prompts from scratch.
Practical example
Example input
Use the "stitch-remotion" skill to help with this workflow task. Context: Generate walkthrough videos from Stitch projects using Remotion. Use when the user wants a video demo, walkthrough, or presentation of Stitch-designed screens. Retrieves screenshots via Stitch MCP, builds a Remotion composition with transitions (fade, slide), zoom animations, and text overlays per screen.
Example output
A structured workflow result with clearer steps, more consistent formatting, and an output that is easier to reuse in the next run.
When to use this skill
- Use this skill when you want a reusable workflow rather than writing the same prompt again and again.
When not to use this skill
- Do not use this when you only need a one-off answer and do not need a reusable workflow.
- Do not use it if you cannot install or maintain the related files, repository context, or supporting tools.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/stitch-remotion/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How stitch-remotion Compares
| Feature / Agent | stitch-remotion | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Generate walkthrough videos from Stitch projects using Remotion. Use when the user wants a video demo, walkthrough, or presentation of Stitch-designed screens. Retrieves screenshots via Stitch MCP, builds a Remotion composition with transitions (fade, slide), zoom animations, and text overlays per screen.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Stitch to Remotion Walkthrough Videos
**Constraint**: Only use this skill when the user explicitly mentions "Stitch" and walkthrough video or Remotion.
You are a **video production specialist** creating walkthrough videos from Stitch app designs. Combine Stitch MCP (or **stitch-mcp-list-projects**, **stitch-mcp-list-screens**, **stitch-mcp-get-screen**) to get screens with Remotion for programmatic video: transitions, zoom, text overlays.
## Prerequisites
- Stitch MCP Server (https://stitch.withgoogle.com/docs/mcp/guide/)
- Remotion MCP or Remotion CLI; Node.js and npm
- A Stitch project with designed screens
## Retrieval and Networking
1. **Discover prefixes**: Run `list_tools` for Stitch and Remotion MCP prefixes.
2. **Project/screen lookup**: Use `[stitch_prefix]:list_projects` (filter view=owned), then `[stitch_prefix]:list_screens` with projectId; identify screens for the walkthrough.
3. **Screen metadata**: For each screen call `[stitch_prefix]:get_screen`; get `screenshot.downloadUrl`, `htmlCode.downloadUrl`, width, height, title, description.
4. **Asset download**: Download screenshots (e.g. via web_fetch or Bash curl); save to `assets/screens/{screen-name}.png` in walkthrough order.
5. **Manifest**: Create `screens.json` with projectName, screens array (id, title, description, imagePath, width, height, duration).
## Video Composition Strategy
- **ScreenSlide.tsx**: Single screen (imageSrc, title, description, width, height); zoom/fade; configurable duration (e.g. 3–5 s).
- **WalkthroughComposition.tsx**: Sequence of ScreenSlides; transitions (fade/slide from `@remotion/transitions`); text overlays.
- **Config**: Frame rate (e.g. 30 fps), dimensions (match Stitch or scale), total duration.
Use Remotion `spring()` for zoom; use `@remotion/transitions` (fade, slide) between screens.
### Common Patterns (align with official)
- **Simple slide show**: 3–5 s per screen, cross-fade, bottom text overlay (screen title), progress bar at top.
- **Feature highlight**: Zoom into regions; animated circles/arrows; slow-motion on key interactions; before/after comparisons.
- **User flow**: Sequential screens with directional slides; numbered steps overlay; highlight actions (clicks, taps); connect screens with animated paths.
### Optional: Voiceover and dynamic text
- **Voiceover**: Generate script from screen descriptions; use TTS or recorded audio; sync screen timing with narration.
- **Dynamic text**: Download `htmlCode.downloadUrl` per screen; parse HTML for headings/buttons/labels; generate timed callouts in the composition.
## Execution Steps
1. **Gather assets**: List Stitch project → list screens → get_screen for each → download screenshots → build screens.json.
2. **Remotion setup**: Use existing Remotion project or `npm create video@latest -- --blank` in e.g. `video/`; install `@remotion/transitions` etc.
3. **Build components**: ScreenSlide.tsx (useCurrentFrame, spring, zoom/fade); WalkthroughComposition.tsx (Sequence, manifest); update remotion.config.ts.
4. **Preview**: `npm run dev` in video/; adjust timing and transitions.
5. **Render**: `npx remotion render WalkthroughComposition output.mp4` (or use Remotion MCP if available).
## Integration with This Repo
- **Stitch screens**: Use **stitch-mcp-list-projects**, **stitch-mcp-list-screens**, **stitch-mcp-get-screen** to resolve projectId/screenId and get download URLs.
- **Design consistency**: If DESIGN.md exists (from **stitch-design-md**), use screen titles/descriptions for overlay text.
## File Structure
```
project/
├── video/
│ ├── src/
│ │ ├── WalkthroughComposition.tsx
│ │ ├── ScreenSlide.tsx
│ │ └── Root.tsx
│ ├── public/assets/screens/ # Stitch screenshots
│ ├── remotion.config.ts
│ └── package.json
├── screens.json # Screen manifest
└── output.mp4
```
## Troubleshooting
| Issue | Solution |
|-------|----------|
| Blurry screenshots | Use full-resolution screenshot URLs |
| Misaligned text | Match composition size to screen dimensions |
| Choppy animations | Increase fps; tune spring damping |
| Build fails | Check Node/Remotion version; install deps |
## Keywords
**English:** Stitch, Remotion, walkthrough, video, screenshots, transitions.
**中文关键词:** Stitch、Remotion、走查视频、转场。
## References
- [Remotion docs](https://www.remotion.dev/docs/)
- [Remotion transitions](https://www.remotion.dev/docs/transitions)
- [Remotion Skills](https://github.com/remotion-dev/remotion/tree/main/packages/skills) — animation, composition patterns, performance; install with `npx skills add remotion-dev/skills`.
- [Remotion MCP](https://www.remotion.dev/docs/ai/mcp) — programmatic render and preview.
- [Stitch MCP](https://stitch.withgoogle.com/docs/mcp/guide/)
- [Examples](examples/usage.md)
- [Screens Manifest Example](examples/screens.json)
- Full templates in [google-labs-code/stitch-skills](https://github.com/google-labs-code/stitch-skills).Related Skills
stitch-vue-vant-components
Convert Stitch designs into modular Vite + Vue 3 + Vant 4 mobile components. Use when the user mentions Vant or Vue Mobile conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to Vant tokens (mobile-first 375px, safe area), enforces Vue SFC structure with Vant 4 components (van-button, van-field, van-nav-bar, van-tabbar).
stitch-vue-layui-components
Convert Stitch designs into modular Vite + Vue 3 + Layui-Vue components. Use when the user mentions Layui conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to Layui tokens (2px/4px radius), enforces Vue SFC structure with Layui-Vue components (layui-btn, layui-input, lay-card, lay-page-header).
stitch-vue-element-components
Convert Stitch designs into modular Vite + Vue 3 + Element Plus components. Use when the user mentions Element Plus, element-ui, or Vue Desktop conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to Element Plus tokens, enforces Vue SFC structure with el-* components (el-button, el-form, el-table, el-card, el-menu).
stitch-vue-bootstrap-components
Convert Stitch designs into modular Vite + Vue 3 + BootstrapVue/BootstrapVueNext components. Use when the user mentions Bootstrap or BootstrapVue conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to Bootstrap utilities, enforces Vue SFC structure with Bootstrap components (b-container, b-row, b-col, b-button, b-card).
stitch-uviewpro-components
Convert Stitch designs into uni-app + Vue 3 + uView Pro pages and components. Use when the user mentions uView Pro, uviewpro, or uni-app Vue 3 conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to rpx/theme, enforces u-* component contracts (u-tabs, u-form, u-picker, u-card) with script setup.
stitch-uview-components
Convert Stitch designs into uni-app + Vue 2 + uView 2.0 pages and components. Use when the user mentions uView, uView 2, or uni-app Vue 2 conversion from Stitch. Retrieves screen HTML via Stitch MCP get_screen, maps Tailwind to rpx/theme, enforces uni-app page structure with uView 2 u-* components (u-navbar, u-form, u-button, u-cell-group).
stitch-ui-prompt-architect
Build Stitch-ready prompts from vague UI ideas (Path A) or from a Design Spec plus user request (Path B). Use when polishing a UI prompt before Stitch generation, improving a prompt that produced poor results, or merging a Design Spec with framework contracts (uView, Element Plus, Layui, Bootstrap, Vant) into a sectioned Context/Layout/Components prompt.
stitch-ui-designer
Master orchestrator for end-to-end Stitch UI design and generation. Use when the user asks to design, create, or make a UI screen using Stitch. Coordinates design spec generation, framework contract injection, prompt assembly, and MCP execution (create_project, generate_screen_from_text, get_screen) in a single workflow.
stitch-ui-design-variants
Generate alternative Stitch design variant prompts for A/B testing and creative exploration. Use when the user wants multiple style, layout, or content options for a Stitch screen. Takes a base Design Spec or prompt and produces 3 distinct variants (layout, style, or content variations).
stitch-ui-design-spec-vant
Vant 4 (Vue 3/Mobile) design spec for Stitch screen generation. Use when the user mentions Vant, vant4, or vant-ui in a Stitch design request. Outputs a hard-constraints prefix with Vant tokens (Primary #1989fa, van-button/van-field/van-nav-bar components, mobile-first 375px) or a CONTRACT_SELECTION_JSON_V1 selector.
stitch-ui-design-spec-uviewpro
uView Pro (uni-app/Vue 3) design spec for Stitch screen generation. Use when the user mentions uview-pro, uviewpro, or uview 3.0 in a Stitch design request. Outputs a hard-constraints prefix with uView Pro tokens (Primary #3c9cff, rpx units, u-button/u-form/u-navbar components, script setup) or a CONTRACT_SELECTION_JSON_V1 selector.
stitch-ui-design-spec-uview
uView 2.0 (uni-app/Vue 2) design spec for Stitch screen generation. Use when the user mentions uview, uview2, or u-view in a Stitch design request. Do NOT use for uView Pro requests. Outputs a hard-constraints prefix with uView 2 tokens (Primary #3c9cff, u-row/u-col/u-button components) or a CONTRACT_SELECTION_JSON_V1 selector.