Skip to Content
Getting startedInstalling Premation

Installing Premation

There are two ways in: the prebuilt desktop installer, and building from source. Most people want the installer. Build from source if you are on a platform whose installer has not shipped yet, or if you intend to change the code.

Check System requirements first — the GPU is the part that decides whether this works.

The desktop installer

PlatformFileStatus
Windows 10 / 11 · x64.exeAvailable
macOS · Apple silicon and Intel.dmgComing soon
Linux · x64.AppImageComing soon

Download from the Premation site, run the installer, and launch. There is nothing else to configure for the editor itself.

The installer is unsigned during the beta. Windows SmartScreen will warn you the first time; choose More info → Run anyway. This will change before 1.0.

Building from source

Get the code and its dependencies

git clone <your-fork-url> motion-editor cd motion-editor npm install

You need Node.js 20 or newer and npm.

Run the desktop app with hot reload

npm run electron:dev

This is the real app. It compiles the Electron main process, starts Vite on localhost:5173, waits for it, and launches Electron.

Or run the renderer in a browser

npm run dev

Faster to iterate on the UI, but it is not the full product: no native menus, no local file access, and no MP4 or ProRes export.

Every script, and what it does

CommandWhat it does
npm run electron:devVite + the Electron shell, both watching
npm run devRenderer only, in your browser
npm run buildTypecheck (tsc -b) and build the renderer bundle
npm run electron:buildBuild the renderer + compile electron/
npm run packUnpacked desktop build — fast, for testing packaging
npm run distInstaller for the current platform
npm testThe full Jest suite
npm run typechecktsc --noEmit
npm run lintESLint
npm run render-testsPixel-compare renders against reference frames
npm run render-tests:updateRe-bless golden frames after an intended pixel change

Installing ffmpeg

Optional, and only for video export. Without it you keep PNG/JPEG sequence, still frame, Lottie and project export; with it you additionally get MP4, WebM, GIF and ProRes.

Using winget:

winget install Gyan.FFmpeg

Or download a build, unzip it, and add the bin folder to your PATH.

Verify with ffmpeg -version. If you would rather point at a specific build, set FFMPEG_PATH to the executable and Premation will use that in preference to anything on your PATH.

The optional server

Premation talks to a companion NestJS server (motion-back, a separate repository) for three things:

  • sign-in,
  • cloud project storage,
  • the AI assistant.

It is genuinely optional. Without it you lose those three and keep everything else, including every export format. If you only want the editor, skip the server entirely.

The editor expects it on port 4000 when it is in use.

Read electron-builder.yml before you distribute a build of your own. As committed it requires a sibling ../motion-back checkout and copies that project’s .env into the installer — a file that holds database credentials and API keys. Remove the extraResources entry and configure the server at first run instead.

Bundling ffmpeg into your own build

To make video export work without a system ffmpeg, bundle the binary:

electron-builder.yml
extraResources: - from: <path-to-folder-containing>/ffmpeg # ffmpeg or ffmpeg.exe to: ffmpeg

electron/main.ts checks <resources>/ffmpeg before falling back to PATH. Note that ffmpeg’s own licence terms — LGPL or GPL, depending on the build — travel with the binary.

Next

Last updated on