momentum.js is an attempt to port the spirit of Processing, p5.js, openFrameworks, and basil.js to Adobe After Effects. It aims to provide designers and developers with a powerful toolkit for procedural design and automation tasks within a user-friendly WYSIWYG interface in After Effects.
Start here if you are new to Momentum:
Browse the full API reference here:
- Bring the spirit of Processing and p5.js into After Effects, pairing code-driven generative art with a user-friendly environment for creating offline-rendered generative art videos.
- Drive generative systems directly from the AE timeline, with controller interfaces that let you animate sketch variables through keyframes.
- Extend the native motion graphics workflow with a programmable system for building procedural and generative compositions inside AE, then integrate the results directly into conventional animation comps.
- Overcome the limits of AE's fragmented tool model by connecting logic across expressions, scripts, plugins, and layers without relying on brittle index-based setups.
- Adobe After Effects installed on the machine
Run:
curl -L https://github.com/barium3/momentumjs/releases/latest/download/momentumjs-installer.pkg -o momentumjs-installer.pkg
open momentumjs-installer.pkgOr manually download: latest release / momentumjs-installer.pkg
Then restart After Effects.
Windows currently supports the CEP panel and Vector mode installation path only. Bitmap mode is not currently supported on Windows.
- Download and unzip the release package.
- Copy the unpacked
momentumjsfolder into:
C:\Users\YourUsername\AppData\Roaming\Adobe\CEP\extensions\momentumjs
- Restart After Effects.
sudo rm -rf "$HOME/Library/Application Support/Adobe/CEP/extensions/momentumjs"
sudo find "$HOME/Library/Application Support/Adobe/Common/Plug-ins" -maxdepth 2 -type d -name MediaCore -exec rm -rf "{}/Momentum" \;Remove:
C:\Users\YourUsername\AppData\Roaming\Adobe\CEP\extensions\momentumjs
- After installation, open the Momentum panel in After Effects from
Window > Extensions > momentum.js - Before using
Bitmapmode, enable GPU acceleration inFile > Project Settings > Video Rendering and Effects > Use > Mercury GPU Acceleration. This is the preparation step for Bitmap GPU rendering.
Momentum currently has two runtime modes:
VectorSketch output is converted into native AE vector shapes, text objects, image layers, and controller layers.BitmapSketch output is rendered by the nativeMomentum.plugineffect, which unlocks a more complete API surface, GPU rendering, and larger renderable object counts.
Use Vector when you want AE-native vector graphics and text objects that remain easy to adjust after generation.
Use Bitmap when you need fuller rendering APIs such as createGraphics(), loadPixels(), updatePixels(), filter(), blend(), loadFont(), or Font.textToPoints(), and when you want the plugin's GPU-backed rendering path.
Bitmap mode is currently much more mature on macOS. Windows bitmap compatibility is still weaker.
Contributors are welcome to submit issues, feature requests, and code improvements.
Please read our contribution guidelines for more information:
This project is licensed under the MIT License. See LICENSE for details.

