<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opencut/apps/web/src/lib/export.ts, branch rust-rewrite</title>
<subtitle></subtitle>
<id>http://git.cashmere.rs/opencut/atom/apps/web/src/lib/export.ts?h=rust-rewrite</id>
<link rel='self' href='http://git.cashmere.rs/opencut/atom/apps/web/src/lib/export.ts?h=rust-rewrite'/>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/'/>
<updated>2026-04-14T16:17:14Z</updated>
<entry>
<title>refactor: move constants to domain modules</title>
<updated>2026-04-14T16:17:14Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-04-14T16:17:14Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=6de6c7fd95de1de9d8d3107eaf7ce1dd150ed094'/>
<id>urn:sha1:6de6c7fd95de1de9d8d3107eaf7ce1dd150ed094</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: split effects and masks into dedicated rust crates, introduce MediaTime and FrameRate</title>
<updated>2026-04-06T23:09:13Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-04-06T23:09:13Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=e4b67094e757917588fb624a30aa046667403add'/>
<id>urn:sha1:e4b67094e757917588fb624a30aa046667403add</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: masks, properties refactor, shaders, storage migrations, and more</title>
<updated>2026-03-29T13:48:22Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-03-25T15:47:22Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=8db3bead13441a5882d8689dfc6a9f09c82375d9'/>
<id>urn:sha1:8db3bead13441a5882d8689dfc6a9f09c82375d9</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: Clip effects, asset sorting, and timeline improvements</title>
<updated>2026-03-02T12:13:07Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2026-03-02T12:13:07Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=e7dcb586c0408255a0bf788e355fdb6d50d9b923'/>
<id>urn:sha1:e7dcb586c0408255a0bf788e355fdb6d50d9b923</id>
<content type='text'>
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 &amp; 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).
</content>
</entry>
<entry>
<title>codebase overhaul (#697)</title>
<updated>2026-01-30T23:20:04Z</updated>
<author>
<name>Maze</name>
<email>167211895+mazeincoding@users.noreply.github.com</email>
</author>
<published>2026-01-30T23:20:04Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=7bf0984698e43b9aa2dd879f65951318ed410390'/>
<id>urn:sha1:7bf0984698e43b9aa2dd879f65951318ed410390</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor: improve types, fix background blur, some other stuff</title>
<updated>2025-08-31T12:10:59Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2025-08-31T12:10:59Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=29fdd8568dbb9c67ee19492781f3f03eb2c3bd24'/>
<id>urn:sha1:29fdd8568dbb9c67ee19492781f3f03eb2c3bd24</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: add fallback</title>
<updated>2025-08-31T11:43:52Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2025-08-31T11:43:52Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=e7d75ce1f882975d2053cb6304d4edb4cb6cfcae'/>
<id>urn:sha1:e7d75ce1f882975d2053cb6304d4edb4cb6cfcae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: implement timeline caching with cache indicator</title>
<updated>2025-08-31T11:26:53Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2025-08-31T11:26:53Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=e222f15d1dd50aa50be8c7424d86aa7fedf0defc'/>
<id>urn:sha1:e222f15d1dd50aa50be8c7424d86aa7fedf0defc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: add audio support for export</title>
<updated>2025-08-28T19:52:03Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2025-08-28T19:52:03Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=70a9bfebb196d5c0bde35ce0a165b696bb9ae1d0'/>
<id>urn:sha1:70a9bfebb196d5c0bde35ce0a165b696bb9ae1d0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>another huge refactor</title>
<updated>2025-08-26T22:52:39Z</updated>
<author>
<name>Maze Winther</name>
<email>mazewinther@gmail.com</email>
</author>
<published>2025-08-26T22:52:39Z</published>
<link rel='alternate' type='text/html' href='http://git.cashmere.rs/opencut/commit/?id=adc8cb37fcec21afac848b1e5dd724394c344050'/>
<id>urn:sha1:adc8cb37fcec21afac848b1e5dd724394c344050</id>
<content type='text'>
</content>
</entry>
</feed>
