Cindy Zhu.
Free guides
Design & creative Claude

Edit videos with Claude Code and Remotion: the full setup

Hey, it's Cindy ๐ŸŒฑ Here is the full setup for making videos with Claude Code and Remotion.
btw the waitlist for AI System Club is now open! If you're keen on using AI to automate your content, video editing, job search, business or build AI agents, feel free to sign up (only if you want to hehe). Ps. the waitlist gets first dibs:)
the basics

What you are actually building

Remotion is a framework that makes videos out of code. Instead of dragging clips on a timeline, your video is a small project of files, and rendering turns it into an MP4. Claude Code already writes code, so it can build the whole thing from a plain-English brief while a live preview updates as it works.

The reason this matters is not the setup, it is what happens afterwards. A finished video in a normal editor is a locked file. A finished video here is a project you can change with a sentence, hand a spreadsheet to, or re-run next week with new numbers and the same look.

๐Ÿ‘ฉโ€๐Ÿ’ป What it is great at Animated explainers, kinetic text, data charts, lower thirds, intros and outros, product promos, and rendering the same template a hundred times with different content.
๐Ÿง  What it is not A replacement for cutting your talking-head footage. It does not find your good takes, judge your pacing or colour grade a face. It builds the graphics layer that sits on top.

before you start

The three prerequisites

  1. ๐Ÿ’ป A terminal and Node.js. Remotion needs at least Node 16, or Bun 1.0.3. If you have never installed Node, get the LTS version from nodejs.org and accept every default. You can check it worked by typing node -v and seeing a version number come back.
  2. ๐ŸŽ A recent operating system. On macOS, Remotion requires macOS 15 (Sequoia) or later, and older versions are not supported. On Linux you need at least version 2.35 of Libc, and Alpine and nixOS are not supported. Windows works. The full list is on the Remotion installation page.
  3. ๐ŸŒฑ Claude Code, on a paid plan. Claude Code runs in your terminal, in VS Code, in a desktop app and on the web, and it needs a paid Anthropic plan. Install it and sign in before you touch Remotion, so the first command you run is already in a working session.

step one

Install Claude Code

These are terminal commands, not prompts. Pick the one line that matches your machine, paste it, and press enter.

  1. ๐ŸŽ macOS, Linux or WSL. Run curl -fsSL https://claude.ai/install.sh | bash. Native installs update themselves in the background, so you stay current without thinking about it.
  2. ๐ŸชŸ Windows. In PowerShell, run irm https://claude.ai/install.ps1 | iex. Git for Windows is recommended alongside it so Claude Code can use a Bash shell.
  3. ๐Ÿบ Or use a package manager. brew install --cask claude-code on macOS, or winget install Anthropic.ClaudeCode on Windows. Neither of these auto-updates, so run the upgrade command occasionally.
  4. ๐Ÿ” Start it and log in. Type claude in your terminal and follow the sign-in prompt. Full instructions and troubleshooting live in the Claude Code quickstart.
๐Ÿ’ก If the install line fails with a syntax error or a 403, you are almost certainly in PowerShell when the command expects CMD, or the reverse. The quickstart page has a troubleshooting section that maps each error to its fix.

step two

Scaffold the Remotion project

Run these four lines in your terminal, in the folder where you keep projects. This is the official path from Remotion's installation docs, and it takes a couple of minutes.

  1. ๐Ÿ“ฆ Create the project. npx create-video@latest --yes --blank my-video creates a blank project with Tailwind and the Remotion agent skills wired in. Swap my-video for whatever you want the folder called.
  2. ๐Ÿ“‚ Move into it. cd my-video.
  3. โฌ‡๏ธ Install the dependencies. npm i. This is the slow one, and it only happens once per project.
  4. ๐Ÿง  Add the agent skills. npx remotion skills add installs Remotion's official skill pack so Claude actually knows the framework instead of guessing at it. You can also install them globally with npx -y skills@latest add remotion-dev/skills -g -y so every future project gets them.
๐ŸŒฑ The skills step is the one that changes the output quality most, and it is the one people skip. Remotion maintains a set of skills covering markup, animation, captions, maps, rendering and upgrades, so Claude follows the framework's own best practices rather than improvising. They are listed on the Remotion agent skills page, including /remotion-create, /remotion-markup, /remotion-studio, /remotion-render and /remotion-captions.

step three

Open the preview and brief it

  1. โ–ถ๏ธ Start the app. npm run dev runs the project locally.
  2. ๐ŸŽž๏ธ Open Remotion Studio. npm run remotion launches Remotion Studio, which is the preview with a timeline, a props editor and a render button. Keep it open on a second screen or beside your terminal so you watch changes land as Claude works.
  3. ๐Ÿ’ฌ Start Claude Code in the project folder. Type claude from inside my-video so it can see the files it is about to write.
  4. ๐Ÿ“‹ Paste the brief. Use the prompt below. Treat it like briefing an editor: the more you specify about pacing, brand and format, the less you have to fix later.
  5. ๐ŸŽฌ Render when it looks right. npx remotion render renders your composition to a file. If you do not name a composition it will ask you to pick one, and if you do not give an output path it writes into the out folder. H.264 is the default codec, which is the one you want for social (render command reference).

copy this

The brief-it-like-an-editor prompt

๐ŸŽฌ build the video
Build me a [length in seconds] vertical 1080x1920 video in this Remotion project. Use the Remotion skills you have installed and follow the framework's own best practices rather than improvising your own animation approach.

Here is the script, one line per on-screen beat, and I want each line to appear as its own moment rather than all at once: [paste your script, one line per beat]. Time it so the words are readable at normal reading speed, hold each beat long enough to actually finish reading it, and never leave the frame empty between beats.

Brand rules, apply these everywhere and do not introduce any other colours or fonts: my accent colour is [hex], my background is [hex], my heading font is [font] and my body font is [font]. My logo is at [path to the file you dropped into the public folder] and it should appear [where and when you want it]. Keep the motion calm and confident, no bouncing, no spinning, no more than two animation styles in the whole video, and use the same easing throughout so it feels like one piece.

Build it as a proper composition with the text content pulled out into props at the top of the file, so I can change the words later without touching the animation code. When you are done, tell me the exact composition ID and the command to render it, and list anything you had to guess at so I can correct it before we go further.
copy this

The revision prompt

This is the actual unlock. Because the video is a project rather than a locked file, changes are conversation, and they take seconds rather than a re-export.

โœ๏ธ change it, keep everything else
I have watched it in the Studio and I want these specific changes. Make only these changes and leave everything else exactly as it is, including timing on the beats I have not mentioned: [list your changes plainly, one per line, for example "the second line stays on screen too briefly, give it another 20 frames", "the accent colour should be warmer, closer to this hex", "swap the logo for the new file in the public folder", "cut the intro so it starts on the first line of the script"].

Do not redesign anything I have not asked about, do not tidy up the code in a way that changes the look, and do not shorten or reword my script text unless I asked you to. If one of my changes breaks the total duration or pushes a beat past the end of the composition, adjust the composition length rather than silently trimming a beat, and tell me what you did.

After the changes, tell me in one line what is different, and confirm whether the Studio preview reloaded or whether I need to restart it.

the real superpower

Render a hundred versions from a spreadsheet

One template, one dataset, and Remotion loops over the rows and renders one video per row. That is a genuinely different capability from any timeline editor, and it is what makes this worth learning if you run ads, sell a product with many variants, or send personalised video.

๐Ÿ‘ฉโ€๐Ÿ’ป the variant factory
Turn this composition into a parameterised template and set it up for a dataset render, following Remotion's documented approach for rendering many videos from one template.

The data lives in [path to your CSV or JSON file] and each row has these fields: [list your column names and what each one means, for example headline, subhead, price, product image URL, and a filename to use for the output]. Every one of those fields should be a prop on the composition with a sensible default, so the template still previews correctly in the Studio when no data is passed in.

Handle the messy reality of real data rather than assuming it is clean: text that is longer than my example should shrink or wrap rather than overflowing the frame, a missing image should fall back to a plain background instead of breaking the render, and any row with an empty required field should be skipped with a warning rather than rendering a broken video.

Then write me a script that loops over every row and renders one video per row into an output folder, named using the filename field. Run it on the first three rows only so I can check them before I commit to the whole set, and tell me roughly how long the full run will take.
๐Ÿ’ก The official write-up of this pattern is Remotion's dataset render page. Ask Claude to read it before it builds, and you will get the supported approach rather than a homemade one.

good to know

What about the audio

Remotion handles audio properly: you drop files into the project's public folder and reference them, then Claude can time them to the frame, layer music under a voiceover, and fade either one. That is real sound design in the editing sense, and it is worth asking for.

What it does not do is invent the audio. Claude is not generating an original track or a sound effect out of nothing here, so you supply the music and the voiceover, from your own library or a royalty-free source, and check the licence covers how you plan to use it. Full component reference: Remotion audio docs.


the honest bit

The cost and the licence

โš ๏ธ Free has a real boundary, and it is about your organisation size, not your usage. Remotion's Free License covers individuals and companies of up to 3 people, includes all features and allows unlimited commercial use, with no sign-up needed. Once your organisation reaches 4 or more people, or you are collaborating as a company, you need a Company License: Remotion for Creators is $25 per month per seat, and Remotion for Automators (building video tools, batch rendering, embedding the Player) is $0.01 per render with a $100 per month minimum. Enterprise starts at $500 per month. Straight from Remotion's own licence and pricing page, with the edge cases answered in their licence FAQ.

Claude Code is the other cost, on your normal Anthropic plan. Rendering itself happens on your own machine, so there is no per-video fee for a solo creator: a two-minute render costs you two minutes of laptop fan noise and nothing else.


set expectations

Where this fits in a real workflow

The clean way to think about it: this is your graphics department, not your editor. It builds the animated intro, the stat card, the kinetic quote, the product promo, the outro, the fifty ad variants. Your talking-head footage still gets cut by you, because choosing the good take is taste, and taste is the part worth keeping.

Start smaller than you want to. Build one fifteen-second animated chart so you feel the prompt-to-preview loop, then build one reusable template you can re-run monthly, then graduate to the dataset render. People who start with "make my whole channel intro package" tend to stop after one frustrating evening. People who start with one chart tend to still be using it a month later.


Proof

the waitlist is now open

AI System Club is launching soon

Build AI systems with me through recorded lessons you can follow at your own pace. Join the waitlist for first access and the founding price.

btw this list gets first dibs
the moment doors open :)