with one click
visual-mode
// Guidance for working on Remotion Studio Visual Mode, sequence identity, node paths, symbolicated stacks, override IDs, and hot reload behavior. Use when implementing or debugging visual editing of Sequences.
// Guidance for working on Remotion Studio Visual Mode, sequence identity, node paths, symbolicated stacks, override IDs, and hot reload behavior. Use when implementing or debugging visual editing of Sequences.
Add a new effect to @remotion/effects, including implementation, package exports, docs, demos, preview images, tests, formatting, and builds.
Update `AvailableFrom` in a PR to the next Remotion patch version (`main` + `0.0.1`).
Open a pull request for the current feature
Add a new Remotion CLI or config option by creating an AnyRemotionOption, registering CLI parsing, wiring config setters, and updating documentation. Use when adding or converting command-line flags or Remotion options.
Add a new package to the Remotion monorepo, including package scaffolding, monorepo registration, documentation, build scripts, tests, and release checklist updates. Use when creating a new @remotion package.
Best practices for Remotion - Video creation in React
| name | visual-mode |
| description | Guidance for working on Remotion Studio Visual Mode, sequence identity, node paths, symbolicated stacks, override IDs, and hot reload behavior. Use when implementing or debugging visual editing of Sequences. |
Visual Mode is a feature in Remotion Studio that allows one to visually edit Sequences.
I've made the following observations:
stack -> changes on hot reload. shared by multiple sequences which have different overrideIdsnodePath -> same identity, even if line, stack and overrideId changes. asyncnodePath + index is ideal way to keep track of the expanded state. that’s the end goal.
Once nodePath is mapped to overrideId, it doesn’t change otherwise component would remount and overrideId works change.
If the same stack is found already used by another sequence, we re-use the overrideId.
nodePath to symbolicated stack could theoretically change on every file change. but multiple sequences can share the same stack and then they all have the same nodePath.
We should only fetch the nodepath for every stack once
different unsymbolicated stacks could lead to the same symbolicated stack, because of fast refresh
unsymbolicated to symbolicated stack does never change because if it does, it is a different stack due to fast refresh