Skip to content

Installation

Fluvie turns a Flutter widget tree into a real MP4. You write the video as code, preview it like an app, and render it with the Fluvie CLI and FFmpeg.

In a hurry? fluvie init scaffolds a project for you: a composition file, an assets/ folder, and a pubspec. See Start a project. To set it up by hand, read on.

Add the package to your pubspec.yaml:

dependencies:
fluvie: ^0.3.0

Then fetch it:

Terminal window
flutter pub get
  • Flutter 3.44 or newer.
  • FFmpeg, for rendering (previews do not need it). You do not have to install it: the first render downloads a pinned FFmpeg build and caches it. Run fluvie ffmpeg install to fetch it ahead of time, or point --ffmpeg / FLUVIE_FFMPEG at your own. See Managing FFmpeg.

Check Flutter:

Terminal window
flutter --version

The repo is a Melos workspace. Bootstrap it once:

Terminal window
melos bootstrap

The gallery example app in examples/gallery/ is the lesson gallery and inspector. Run it from the repo root so its render button can find the CLI.

fluvie preview runs a composition live, with hot reload:

Terminal window
fluvie preview ./lib/my_video.dart

It runs on your desktop by default, not the browser: a desktop preview decodes any clip through FFmpeg, while a browser can only decode what WebCodecs supports. Pass -d chrome for the browser, or -d <device> for a phone or an emulator.

Rendering to a file does not need a preview. The headless render pipeline (the CLI, the API, and the Docker image) produces the final frames correctly on its own, including loading the real fonts so text never falls back to the boxy test font.