musevideo-client
Typed Rust primitives for describing generation jobs on Muse Video — an AI platform that turns text, images, and existing footage into finished video.
Rather than wrapping any single HTTP endpoint, this crate gives you small, dependency-free building blocks: a request you can construct fluently, an aspect-ratio enum that covers the common social formats, and optional Serde derives so the same structs move cleanly between your service, a queue, and disk.
What's inside
VideoRequest— a builder-style prompt request (prompt, negative prompt, duration, model)AspectRatio— widescreen, vertical, square, or a custom ratio string- Zero required dependencies; enable the
serdefeature only when you need (de)serialization
Quick start
use ;
let job = new
.aspect_ratio
.duration_seconds
.negative_prompt;
assert_eq!;
Turn on serialization when you need to persist or transmit a job:
= { = "0.1", = ["serde"] }
When to reach for it
CLIs, batch workers, and backend services that assemble Muse Video jobs tend to re-invent the same prompt/parameter structs. Keeping them in one small, portable crate makes those jobs easy to build, log, and pass around without pulling in a heavy SDK.
Docs and the full platform live at musevideo.art.