Repository navigation
Releases
Releases · prefix-tree/cutcraft
Release v0.3.0
What's Changed
- ci(publish): authenticate through OIDC, and allow a retry from main by @bsnisar in #31
- feat(effects): passes for defineEffect, and levels drawn by a built-in shader by @bsnisar in #33
- feat(effects): grade with a LUT, and read assets as shader textures by @bsnisar in #35
- feat(effects): colour tools for footage, drawn as shaders by @bsnisar in #36
- feat(effects): footage tools: key, region blur, corner pin, zoom blur, aberration by @bsnisar in #37
- feat(effects): glow, outline, long shadow and bevel for titles and shapes by @bsnisar in #38
- test(effects): golden stills for every built-in shader effect, and effect cases in the bench by @bsnisar in #40
- feat(transitions): iris, clock wipe, blinds, film burn, pixel dissolve and zoom by @bsnisar in #39
- fix(render): share one source-page Vite server between exports by @bsnisar in #41
- feat(effects): run an element's effects in the order the file writes them by @bsnisar in #42
- feat(effects): keyframe an effect's params inside the effect by @bsnisar in #43
- docs: one sidebar for the docs site, and a read-only drift check for generated pages by @bsnisar in #44
- refactor(effects): one registry for every built-in effect and transition by @bsnisar in #45
- feat(effects)!: typed effect() and transition(), shaders read params.* by @bsnisar in #46
- feat(effects)!: one scale per kind of value by @bsnisar in #47
- feat(effects)!: one way to do each thing by @bsnisar in #48
- perf(effects): a Gaussian drawn small, in linear pairs, over only the part it needs by @bsnisar in #49
- perf(effects): a separable outline, zoom samples by streak, and glow as a halo by @bsnisar in #50
- refactor(effects): uniforms typed by the schema, GLSL modules, cached programs by @bsnisar in #51
- refactor(effects): shapes as primitives, and a bailout for effects that change nothing by @bsnisar in #52
- perf(effects): a run of colour effects drawn as one pass by @bsnisar in #53
- refactor(kit)!: declarations are values, not registrations by @bsnisar in #54
- docs: a demo for every effect and transition; correct the effects pages by @bsnisar in #55
- docs: an open-source landing page at / by @bsnisar in #57
- docs: put the second coffee shot in the demos by @bsnisar in #59
- docs: a live playground at /playground and on the landing page by @bsnisar in #58
- fix(player): draw vignette and grain on an Adjustment, report them on overlays by @bsnisar in #56
- docs: an ukiyo-e logo film for the landing page's hero by @bsnisar in #60
- feat(kit): ready-made components made of the kit's own elements by @bsnisar in #61
- refactor!: remove , its 34 kinds, icon stickers and lucide by @bsnisar in #62
- feat(docs): three ways to make a video, the idea, and a 12-second hero by @bsnisar in #63
Full Changelog: v0.2.0...v0.3.0
Release: 0.2.0
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()anddefineTransition()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()andgoogleFont(). Google fonts are cached, so later exports need no network. - Transcripts and subtitles.
cutcraft add talk.mp4writes the manifest entry, with words from the SRT, VTT or Whisper/ElevenLabs JSON file next to the video.--srtand--vttwrite 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,--speedand--softwareare removed.--tabsis new. - API:
renderVideo,renderStillandcheckLayoutrequiresource(fromloadVideo). - Elements and props: types and props that never rendered were removed, and
<Graphic>is deprecated.
- Formats: MP4 (H.264/AV1) and WebM (VP9/AV1), plus MP3 and WAV for audio only.
Full details are in each package's CHANGELOG.md.