Files
effectcraft/crates/script/Cargo.toml
Brandon ThomasandClaude Opus 5.5 78cd313d3c M14.4: scripting with an After Effects-style JavaScript object model
New crate effectcraft-script (L4): boa runtime with app/Project/CompItem/
Layer/PropertyGroup/Property/TextDocument/MarkerValue/RenderQueue/File
object model over engine commands (undoable, undo groups), AE match-name
table, file/network security gate. Entry points: script.run command,
File > Scripts > Run Script File (.jsx/.js), Window > Script Console,
effectcraft-cli script, MCP run_script. Engine: project.delete/duplicate,
prop.renameGroup/setGroupEnabled/removeGroup/duplicateGroup/moveGroup.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 22:13:09 -04:00

28 lines
940 B
TOML

[package]
name = "effectcraft-script"
description = "EffectCraft scripting: JavaScript (boa) with an After Effects-style object model (app, project, CompItem, Layer, Property…) over the engine's undoable commands"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
[lints]
workspace = true
[dependencies]
effectcraft-engine = { workspace = true }
effectcraft-project = { workspace = true }
effectcraft-keyframe = { workspace = true }
effectcraft-time = { workspace = true }
effectcraft-render = { workspace = true }
effectcraft-path = { workspace = true }
serde_json = { workspace = true }
boa_engine = { workspace = true }
# On the web, boa's clock and Math.random need the browser (getrandom `wasm_js`, web-time).
[target.'cfg(target_arch = "wasm32")'.dependencies]
boa_engine = { workspace = true, features = ["js"] }
[dev-dependencies]
effectcraft-expr = { workspace = true }