storytold /effectcraft

EffectCraft: An open-source motion graphics and compositing tool written from scratch in pure Rust

★ 8,616⑂ 4,554👁 52⑃ 1,698● 1,626▤ 23◈ 0
RustApache-2.0Created 2026-10-01getartcraft.com/apps/effectcraft
8,616
stars
+39
4,554
forks
52
watchers
1,698
prs
1,626
issues
23
releases
0
discussions

README

EffectCraft


  Motion graphics and visual effects; an open-source, professional motion graphics and visual effects studio, built in pure Rust.



  A free, open-source compositor: compositions, layers,
  keyframes, 308 effects, layer styles, expressions, 3D cameras and lights, and a render queue, native on macOS,
  Windows and Linux, and in the browser. Young, moving fast, and already usable.



  
  
  
  
  
  



  



  EffectCraft on getartcraft.com ·
  ArtCraft ·
  All Crafting Apps





  


 [!NOTE]
 ArtCraft is a community of artists from all walks of life. Digital, generative, music,
 games — if you make things, you're one of us. Come say hi on Discord.


  What it is ·
  Animate ·
  Effects ·
  3D ·
  Export ·
  Agents ·
  Get started ·
  Status ·
  How it's made ·
  Downloads ·
  The Crafting Apps ·
  License


 What EffectCraft is

EffectCraft is for animated titles, motion graphics and compositing work: the kind of thing
motion designers and VFX artists need. You build a composition out of layers (solids, shapes,
text, footage, other compositions), animate their properties with keyframes, stack effects on
them and render the result.

The interface feels natural and responsive, with dedicated panels (Project, Composition, Timeline,
Layer, Footage, Effect Controls, Tools, Preview, Effects & Presets, Audio, Info, Paragraph,
Character, Align, Progress, Render Queue) and standard motion graphics shortcuts, going further in
a few places where it matters to us:

- Lottie import and export built in, so animations can go straight to the web and apps
  without a plugin.
- A project file you can read. Projects are versioned JSON (.ecproj), so they diff cleanly
  in version control.
- Everything is scriptable. Menu actions, timeline edits and property changes are exposed as
  commands. Engine commands are available through the CLI, JSON control channel and MCP;
  UI-only commands use the frontend dispatcher and can be invoked through the control channel
  or an attached MCP bridge.
- No FFmpeg. Video and audio decoding and encoding are pure Rust: FilmCraft's codecs and
  EffectCraft's own VP9, AV1, HEVC and Opus encoders.

 Animate

The panels, menus and shortcuts follow standard motion design conventions:
Project, Composition, Timeline, Effect Controls, Properties, Effects & Presets, Character,
Paragraph, Align, Info, Preview, Audio and the Render Queue, docked the way you expect. Drag
footage, comps and effects between them: onto the comp viewer, where they land under the pointer,
or into the Timeline, between layers and at the time you point to.

- Layers of every kind: solids, shapes, text, footage, nested compositions, nulls,
  adjustment layers, cameras and lights; parenting, track mattes, all 38 blend modes, motion blur.
- Keyframes that behave the same: linear, Bezier, hold, auto and continuous Bezier, roving
  keys, Easy Ease (F9), Keyframe Velocity and Interpolation dialogs, copy and paste at the current
  time, and a Graph Edi

Top issues

Latest release

EffectCraft v0.22.0 v0.22.0 2026-11-06
What's Changed
 OCIO config: a mismatched closing bracket ends a flow collection; multiline flows parse in linear time by @dylanmtaylor in https://github.com/storytold/effectcraft/pull/2939
 Roto Brush: keep frozen mattes in a session without their model (2833) by @JonRC in https://github.com/storytold/effectcraft/pull/2834
 Import: EDL source timecodes land on each file's own time (2832) by @JonRC in https://github.com/storytold/effectcraft/pull/2835
 Lottie: read the closed flag older Bodymovin files keep outside the path by @JonRC in https://github.com/storytold/effectcraft/pull/2842
 Text 

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON