Skip to content

Release: 0.2.0

Choose a tag to compare

@bsnisar bsnisar released this 05 Nov 14:08
· 45 commits to main since this release
8061d09

CutCraft 0.2.0

  • The export is the player. Every export runs the real player in headless Chrome, so the file you export matches the preview exactly: any CSS in a <Layer>, three.js, Motion, shaders and motion blur. Chrome downloads itself on the first export, and there's nothing native to install.
  • three.js and Motion on the timeline. <Three> and <Motion> follow the video's clock and scrub both ways.
  • Your own effects and transitions. defineEffect() and defineTransition() take a GLSL function and a zod schema. Effects also work on titles and Layers.
  • Motion blur. Set <Composition motionBlur={…}> to get a film-camera shutter in the export.
  • Fonts declared in the file. font() and googleFont(). Google fonts are cached, so later exports need no network.
  • Transcripts and subtitles. cutcraft add talk.mp4 writes the manifest entry, with words from the SRT, VTT or Whisper/ElevenLabs JSON file next to the video. --srt and --vtt write subtitle files for the cut.
  • Breaking changes:
    • Formats: MP4 (H.264/AV1) and WebM (VP9/AV1), plus MP3 and WAV for audio only. .mov/ProRes, HEVC and VP8 are gone.
    • CLI flags: --workers, --speed and --software are removed. --tabs is new.
    • API: renderVideo, renderStill and checkLayout require source (from loadVideo).
    • Elements and props: types and props that never rendered were removed, and <Graphic> is deprecated.

Full details are in each package's CHANGELOG.md.