rustmotion 0.6.1

A CLI tool that renders motion design videos from JSON scenarios. No browser, no Node.js — just a single Rust binary.
[package]
name = "rustmotion"
version.workspace = true
edition = "2021"
description = "A CLI tool that renders motion design videos from JSON scenarios. No browser, no Node.js — just a single Rust binary."
license = "MIT"
repository = "https://github.com/LeadcodeDev/rustmotion"

[lib]
path = "src/lib.rs"

[dependencies]
rustmotion-core.workspace = true
rustmotion-components = { workspace = true, features = ["lottie-native"] }
rustmotion-html.workspace = true
skia-safe = "0.82"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
openh264 = "0.6"
minimp4 = { version = "0.1", features = ["aac"] }
gif = "0.13"
symphonia = { version = "0.5", features = ["mp3", "wav", "ogg", "flac", "aac"] }
rubato = "0.16"
notify = "7"
rayon = "1"
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "webp"] }
syntect = { version = "5", default-features = false, features = ["default-fancy"] }
similar = "2"
resvg = "0.44"
usvg = "0.44"
tiny-skia = "0.11"
ureq = "3"
rustfft = "6"

[features]
# Opt-in: integration tests that shell out to a real ffmpeg binary.
ffmpeg_integration = []
## Re-expose native Lottie decoding (default-on). Activating this feature here
## propagates to rustmotion-components so consumers only need to touch rustmotion.
lottie-native = ["rustmotion-components/lottie-native"]

[dev-dependencies]
schemars = "0.8"