| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | refactor: split builtin and freeform masks | Maze Winther | 2026-05-02 | 6 | -9/+181 |
| | | | | | Made-with: Cursor | ||||
| * | refactor: make mask renderer dispatch explicit | Maze Winther | 2026-05-02 | 1 | -57/+63 |
| | | | | | Made-with: Cursor | ||||
| * | refactor: animate params over time | Maze Winther | 2026-05-02 | 5 | -1/+304 |
| | | |||||
| * | chore: cleanup | Maze Winther | 2026-05-02 | 2 | -24/+17 |
| | | |||||
| * | refactor: unify element params | Maze Winther | 2026-05-02 | 8 | -16/+417 |
| | | |||||
| * | chore: switch from biome to eslint + prettier; fix ton of lint issues | Maze Winther | 2026-05-02 | 34 | -419/+363 |
| | | |||||
| * | refactor: split animation helpers by domain | Maze Winther | 2026-04-26 | 5 | -269/+412 |
| |\ | |||||
| | * | refactor: split animation helpers by domain | Maze Winther | 2026-04-26 | 1 | -10/+10 |
| | | | |||||
| | * | refactor: centralize editor interaction state | Maze Winther | 2026-04-25 | 1 | -15/+16 |
| | | | | | | | | | | | | | | | | | Move timeline and preview gestures into dedicated controllers so hooks stay thin around editor state and DOM events. This also routes drag and playback synchronization through manager APIs and reuses persistent wasm surfaces so scrubbing, seeking, and preview rendering stay in sync. Made-with: Cursor | ||||
| | * | fix: surface unsupported video codec on import, fix Input leaks | Maze Winther | 2026-04-25 | 1 | -5/+9 |
| | | | |||||
| | * | perf: improve rendering performance by ~20x | Maze Winther | 2026-04-22 | 4 | -259/+402 |
| | | | |||||
| * | | refactor: thinner hooks | Maze Winther | 2026-04-26 | 1 | -20/+25 |
| | | | |||||
| * | | fix: model editor time as wasm MediaTime ticks end-to-end | Maze Winther | 2026-04-26 | 6 | -15/+525 |
| |/ | |||||
| * | refactor: migration run() and pure v1-to-v2 transform | Maze Winther | 2026-04-22 | 36 | -828/+990 |
| | | |||||
| * | chore: formatting | Maze Winther | 2026-04-22 | 7 | -37/+54 |
| | | |||||
| * | fix: project loading thing | Maze Winther | 2026-04-21 | 2 | -17/+43 |
| | | |||||
| * | refactor: restructure files to their domains, new preview overlay system, ↵ | Maze Winther | 2026-04-20 | 28 | -66/+210 |
| | | | | | and dep graph | ||||
| * | fix: WebGL frame rendering and opencut-wasm 0.2.8 | Maze Winther | 2026-04-19 | 1 | -29/+37 |
| | | |||||
| * | feat: clip volume line and timeline waveform improvements | Maze Winther | 2026-04-18 | 1 | -0/+87 |
| | | |||||
| * | feat: text / custom masks, fix preview pan, refactor selection | Maze Winther | 2026-04-15 | 6 | -86/+256 |
| | | |||||
| * | chore: formatting | Maze Winther | 2026-04-15 | 2 | -9/+3 |
| | | |||||
| * | fix: repair scene tracks broken by v23-to-v24 migration | Maze Winther | 2026-04-15 | 4 | -5/+161 |
| | | |||||
| * | chore: remove debugging throughout codebase | Maze Winther | 2026-04-15 | 2 | -23/+1 |
| | | |||||
| * | refactor: move constants to domain modules | Maze Winther | 2026-04-14 | 9 | -15/+19 |
| | | |||||
| * | fix: text measurement, rotation handle, video cache races, playback sync | Maze Winther | 2026-04-13 | 1 | -0/+16 |
| | | | | | Made-with: Cursor | ||||
| * | refactor: rendering pipeline | Maze Winther | 2026-04-13 | 18 | -1237/+1766 |
| | | | | | Made-with: Cursor | ||||
| * | feat: position animated independently per axis | Maze Winther | 2026-04-13 | 3 | -56/+214 |
| | | | | | Made-with: Cursor | ||||
| * | refactor: structured track layout per scene | Maze Winther | 2026-04-07 | 5 | -29/+148 |
| | | |||||
| * | refactor: split effects and masks into dedicated rust crates, introduce ↵ | Maze Winther | 2026-04-07 | 11 | -212/+766 |
| | | | | | MediaTime and FrameRate | ||||
| * | fix: clean up | Maze Winther | 2026-04-06 | 1 | -1/+35 |
| | | |||||
| * | refactor: rewrite animation system to use bindings and scalar channels | Maze | 2026-04-05 | 5 | -93/+865 |
| | | |||||
| * | refactor: split constants by domain and isolate timeline panel from core | Maze Winther | 2026-04-01 | 3 | -18/+27 |
| | | |||||
| * | fix: don't crash when GPU isn't available | Maze Winther | 2026-04-01 | 1 | -9/+23 |
| | | |||||
| * | fix: align background blur with effect blur intensity scale | Maze Winther | 2026-04-01 | 5 | -4/+180 |
| | | |||||
| * | feat: migrate GPU renderer from WebGL to wgpu/WASM | Maze Winther | 2026-04-01 | 11 | -764/+231 |
| | | |||||
| * | feat: separate audio from elements | Maze Winther | 2026-03-31 | 4 | -1/+247 |
| | | |||||
| * | Merge branch 'feature/track-placement' | Maze Winther | 2026-03-31 | 1 | -1/+1 |
| |\ | |||||
| | * | refactor: centralize track placement into its own module | Maze Winther | 2026-03-31 | 1 | -1/+1 |
| |/ | |||||
| * | refactor: clean up number formatting and step handling in property tabs | Maze Winther | 2026-03-29 | 1 | -1/+3 |
| | | |||||
| * | chore: normalize line endings | Maze Winther | 2026-03-29 | 58 | -4838/+4838 |
| | | |||||
| * | feat: masks, properties refactor, shaders, storage migrations, and more | Maze Winther | 2026-03-29 | 51 | -564/+2874 |
| | | |||||
| * | fix: fallback to opus codec | Maze Winther | 2026-03-09 | 1 | -1/+14 |
| | | |||||
| * | feat: wire ui to have keyframes for: opacity, text color, and all background ↵ | Maze Winther | 2026-03-02 | 1 | -10/+45 |
| | | | | | properties | ||||
| * | feat: implement keyframe support for more properties at the core (no ui yet) | Maze Winther | 2026-03-02 | 1 | -7/+21 |
| | | |||||
| * | feat: Clip effects, asset sorting, and timeline improvements | Maze Winther | 2026-03-02 | 7 | -84/+450 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Major features and improvements: * **Clip Effects**: * Added UI in Properties Panel to manage effects on video/image clips (add, remove, toggle, reorder). * Implemented dynamic parameter fields for effects. * Added support for keyframing effect parameters. * **Assets Panel**: * Added sorting options: Name, Type, Duration, and File Size. * Persisted view preferences (grid/list mode, sort order) to local storage. * Refactored media item rendering and drag interactions. * **Timeline & Interaction**: * **Keyframe Dragging**: Added ability to drag keyframes directly on the timeline element. * **Resizing**: Improved resize logic to respect neighboring clips (prevents overlaps). * **Visuals**: Implemented tiled background rendering for video/image clips on the timeline. * **Shortcuts**: Added "Deselect All" action bound to the `Escape` key. * **Fixes**: Corrected drag-and-drop coordinate calculations when the timeline track area is scrolled. * **Text Elements**: * Refactored text background storage to use an explicit `enabled` flag. * Added `V8toV9` storage migration to update existing projects. * **Architecture**: * Moved export state management to `ProjectManager` for better lifecycle handling. * Refactored `PropertiesPanel` sections to be more composable (custom headers, borders). | ||||
| * | feat: introduce WebGL effects system and Blur effect | Maze Winther | 2026-02-28 | 15 | -138/+1029 |
| | | | | | | | | | | | | | This implements the foundational architecture for video effects, starting with a multi-pass WebGL rendering pipeline and a customizable Gaussian Blur effect. Key changes: - WebGL Engine: Added `raw-loader` for `.glsl` shaders, multi-pass framebuffer rendering, and live offscreen canvas previews. - Node Architecture: Replaced hardcoded background blur with `CompositeEffectNode` and added `EffectLayerNode` to apply effects to specific visual elements. - Timeline & DND: Added a new `effect` track type. Upgraded drag-and-drop to support dropping effects directly onto the timeline. Consolidated track constants into a cleaner `TRACK_CONFIG`. - UI/UX: Added an Effects tab in the assets panel with live previews. Added an Effect Properties panel with sliders and inputs for fine-tuning parameters. - Data Model: Added `sourceDuration` to video and audio elements, and wrote a v8 storage migration to update existing projects to the new schema. - Docs: Added `CHANGELOG.md` tracking v0.1.0 and v0.2.0, plus `docs/effects-renderer.md` to document the new WebGL pipeline. | ||||
| * | another type error | Maze Winther | 2026-02-27 | 1 | -2/+9 |
| | | |||||
| * | feat: implement keyframe animation system | Maze Winther | 2026-02-27 | 6 | -16/+65 |
| | | | | | | | | | | | Add keyframe support for transform, opacity, and volume properties. Includes animation engine (interpolation, mutations, resolvers), timeline markers with selection/snapping, properties panel toggles, keyframe-aware renderer, and full undo/redo command support. Also refactor element command constructors to object params, extract timeline pixel math to pixel-utils.ts, and update cursor rules. | ||||
| * | fix a ton of issues + improvement | Maze Winther | 2026-02-25 | 4 | -78/+160 |
| | | |||||
| * | fix preview perf issues | Maze Winther | 2026-02-23 | 3 | -41/+98 |
| | | |||||
