Commit Graph

411 Commits

Author SHA1 Message Date
Maze Winther adc8cb37fc another huge refactor 2025-08-27 00:52:39 +02:00
Maze Winther b459b46802 refactor: type-safety & separate concerns 2025-08-26 15:04:25 +02:00
Maze Winther 2f7cd11ca1 refactor: type-safety 2025-08-26 11:51:08 +02:00
Danilo Arantes F. 03e68e77a9
fix(editor): Don't log expected errors in `AudioWaveform` during unmount (#565)
* Update README.md

* fix(editor): Don't log expected errors in `AudioWaveform` during unmount

---------

Co-authored-by: Maze <167211895+mazeincoding@users.noreply.github.com>
Co-authored-by: Maze Winther <mazewinther@gmail.com>
2025-08-25 11:37:33 +02:00
Maze Winther a4f2273e25 feat: mediabunny + preview canvas refactor 2025-08-23 11:00:59 +02:00
Maze Winther 756a7c7caa feat: implement reveal in media feature 2025-08-18 10:54:28 +02:00
enkei64 0f1ed40aef
fix: stickers panel (#553)
* fixes to the stickers panel

* Reduce padding on the sides to save space
2025-08-16 23:03:16 +02:00
Maze Winther a90a0f9740 typo 2025-08-16 19:16:20 +02:00
Maze Winther 11d2a66c95 style: improve ui for selected timeline elements 2025-08-16 19:11:50 +02:00
karansingh21202 e96682f89e
fix: enable removing background color in text back to transparent and remember last selection (#510) 2025-08-16 07:39:32 +02:00
Zaka 7e4cd76762
feat: add an input so the user can go to a specific timestamp (#530)
* feat: add an input so the user can go to a specific timestamp

* fix: use TimeCode type for EditableTimecodeProps

* cleanup

---------

Co-authored-by: Maze Winther <mazewinther@gmail.com>
2025-08-15 23:01:18 +02:00
enkei64 c3f3345d7b
feat: stickers panel (#539)
* Stickers panel base complete

* Improve dark mode stickers background for visibility

* Prevent stickers from being too small or too big

* Improve UI, added credit for Iconify API

* Allow manually loading more collections

* Add a maximum width of 200px so stickers aren't too big

* cleanup

* style: hover state of button

* refactor: input component

* fix: mark input component as client

* so much stuff

---------

Co-authored-by: Maze Winther <mazewinther@gmail.com>
2025-08-15 02:11:21 +02:00
vadi25 defff2fc46
fix: changed mute track icon to more understandable ones (#550) 2025-08-14 14:30:22 +02:00
Maze Winther 0274fb6626 cleanup 2025-08-13 17:05:17 +02:00
ryu 0ae09c9df5
Merge branch 'staging' into feat/timeline-return-to-start 2025-08-13 14:01:07 +05:00
Maze Winther 71b6718337 feat: implement mute video tracks 2025-08-13 00:52:19 +02:00
Maze Winther 5b059ce6de feat: auto-captions 2025-08-11 22:24:54 +02:00
Justin322322 e908bad167
fix(preview): mute button not affecting embedded video audio, ensure topmost video track renders above lower tracksmute button not affecting embedded video audio (#529) (#532) 2025-08-09 23:39:24 +02:00
Sai Teja 8c205273b7
fix(timeline): keep playhead below dialogs (#533) 2025-08-09 23:36:48 +02:00
ryu e71788014d
Merge branch 'main' into feat/timeline-return-to-start 2025-08-07 19:37:06 +05:00
Maze Winther effb6a8641 feat: remove background blur note 2025-08-07 15:46:09 +02:00
Maze Winther ce58b5199a feat: external files always create new tracks at playhead position 2025-08-06 12:52:11 +02:00
Maze Winther 2c90ddd5d5 feat: allow external file drops to individual timeline tracks 2025-08-06 12:30:48 +02:00
Maze Winther e5a0deb777 style: move icons on timeline toolbar 2025-08-05 17:18:41 +02:00
Maze Winther 4f6d014286 fix: remaining timeline issues with targeting wrong radix ui scroll element 2025-08-05 14:07:05 +02:00
Maze Winther b83e6bedb7 Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-08-05 12:58:12 +02:00
Mathis Boulais 9c6556ea05
fix: restore horizontal scroll sync after Radix ScrollArea removal (#518) 2025-08-05 12:57:47 +02:00
Maze Winther 2a7cc13d3e fix: ts error 2025-08-05 09:06:13 +02:00
Maze Winther eafea56e99 style: spacing 2025-08-05 08:51:27 +02:00
Maze Winther efbbc48bc5 refactor: create base view for media panel tabs 2025-08-05 08:46:17 +02:00
Maze Winther 949228f0bb refactor: remove unused imports 2025-08-05 08:26:39 +02:00
Maze Winther e454612000 formatting 2025-08-05 07:25:14 +02:00
Maze Winther dee434cd33 style: padding top in preview toolbar 2025-08-05 07:14:24 +02:00
Maze Winther 1bed89d55f fix: typescript error from old usage 2025-08-05 06:28:45 +02:00
Maze Winther b0329f1372 refactor: move canvas size to be a project-level setting instead of editor-level 2025-08-04 20:45:48 +02:00
Maze Winther f7cd3ebac9 Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-08-04 17:17:51 +02:00
Maze Winther 9ec5a02252 feat: layout guide for tiktok 2025-08-04 17:17:48 +02:00
Pratiyank Kumar 2fcc5e0643
feat: add tooltip in TabBar (#515) 2025-08-04 14:16:25 +02:00
Maze Winther 0386624ff5 fix: click empty area on timeline to move playhead 2025-08-04 12:35:14 +02:00
Maze Winther b0cfedbc5a refactor: remove unnecessary code from tab-bar 2025-08-04 10:59:55 +02:00
Maze Winther d3ace6a946 Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-08-04 02:59:52 +02:00
Maze Winther acc2089d0d feat: add license filtering for sound effects 2025-08-04 02:59:07 +02:00
Maze Winther 35ade4b25f refactor: remove unused import 2025-08-04 01:40:24 +02:00
Maze Winther 48b694bbd8 feat: sound effects functionality with freesound's api 2025-08-04 01:30:33 +02:00
Eshan Das b52a9ca3e2
fix: preserve line breaks in text element rendering (#461)
- Change whiteSpace from 'nowrap' to 'pre-wrap' in preview panel
- Allows multi-line text content to display correctly
- Maintains existing text wrapping behavior
2025-08-03 14:44:23 +03:00
Maze Winther 02a50d12de feat: empty state on properties panel 2025-08-02 19:22:06 +02:00
Maze Winther ae54aff1a9 style: padding in media panel tabs 2025-08-02 16:12:50 +02:00
Maze Winther 2c0423667c feat: background gradients to project settings 2025-08-02 16:09:20 +02:00
Maze Winther e5a5b76ece style: add hover effect to tabs 2025-08-02 12:37:21 +02:00
Maze Winther 14393c559d fix: grammar 2025-08-02 12:23:30 +02:00
Maze Winther 7891ed2cc1 feat: make settings items expandable 2025-08-02 12:21:24 +02:00
Maze Winther dd09bf2949 feat: add project settings 2025-08-02 01:41:46 +02:00
Maze Winther 68da487f30 style: complete re-design of whole editor 2025-08-01 19:57:26 +02:00
Maze Winther 09cb8c8d98 fix: resize not matching with frames 2025-08-01 09:51:54 +02:00
ryu 6412158003 feat: enhance timeline navigation with comprehensive testing and documentation
- Add comprehensive test suite with 13 passing tests
- Create detailed keyboard shortcuts documentation (KEYBOARD_SHORTCUTS.md)
- Add meaningful code comments explaining functionality
- Set up Vitest testing framework with proper mocks
- Fix React imports in timeline components for proper JSX rendering
- Add ResizeObserver mock for browser environment compatibility
- Enhance keyboard shortcuts help to properly format Enter key display

Tests cover:
- Enter key keybinding functionality
- Return to Start button click behavior
- Keyboard shortcuts help system integration
- Component rendering and tooltip structure

Documentation includes:
- Complete keyboard shortcuts reference
- UI feature explanations
- Usage notes and behavior descriptions

All tests passing (13/13) with full feature coverage.
2025-08-01 03:04:06 +05:00
ryu f5d5a387d3 feat: add timeline navigation return to start functionality
- Add Enter key shortcut for seeking to timeline start (00:00:00)
- Add return to start button in timeline toolbar with skip-back icon
- Both methods complement existing Home key shortcut
- Update keyboard shortcuts help to display Enter key properly
- Maintain consistent UI styling with existing playback controls

Resolves #415
2025-08-01 02:33:42 +05:00
Maze Winther 3c64f9cfa2 Merge pull request [#494](https://github.com/mazeincoding/AppCut/issues/494) 2025-07-31 21:46:33 +02:00
Maze Winther 6899450df9 Merge branch 'feat/tailwindcss-v4' into staging 2025-07-31 13:39:47 +02:00
melad f255ccb818
feat: add hide or show for media elements, mute or unmute for audio elements (#500)
* feat: create external tools section (#493)

* feat: create external tools section

* fix: better wording

* Feature, added hide or show for media elements, mute or unmute for audio elements both effective on timeline and preview panel, with overlay icon for indicating so and state storing,

* Minor UI vertical separator between magnifier and other buttons

* fixed the AbortError issue in the AudioWaveform component. The error was occurring because of a race condition during cleanup when the component unmounts.

* feat: implement bookmarking functionality in the timeline and project storage

- Added bookmark management methods in the project store for toggling and checking bookmarks.
- Updated the timeline component to display bookmark markers and integrate bookmark actions in the context menu.
- Enhanced the storage service to handle bookmarks in project serialization and deserialization.
- Updated project types to include bookmarks as an array of numbers.

---------

Co-authored-by: Dominik K. <dominik@koch-bautechnik.de>
Co-authored-by: Maze Winther <mazewinther@gmail.com>
2025-07-31 12:50:22 +02:00
vracto b229d94a8d
add forward and backward buttons to non-fullscreen view (#495)
* feat: create external tools section (#493)

* feat: create external tools section

* fix: better wording

* add forward and backward buttons to non-fullscreen

---------

Co-authored-by: Dominik K. <dominik@koch-bautechnik.de>
Co-authored-by: Maze Winther <mazewinther@gmail.com>
2025-07-30 23:56:10 +02:00
Brandon McConnell cd5642161b Swap background CSS inline style for tailwind utility 2025-07-30 16:54:20 -04:00
Brandon McConnell e3ecf4855a Correct `blur-sm` ➞ `blur` 2025-07-30 15:05:03 -04:00
Brandon McConnell df1e80b528 Lay groundwork for Tailwind v4 upgrade 2025-07-30 13:15:09 -04:00
Maze Winther f15508df62 feat: make timestamp editable 2025-07-30 17:44:19 +02:00
Maze Winther 91c95b12d1 Merge pull request [#467](https://github.com/mazeincoding/AppCut/issues/467) 2025-07-30 11:47:43 +02:00
Maze Winther 004fa0c12b Merge pull request [#483](https://github.com/mazeincoding/AppCut/issues/483) 2025-07-30 11:38:21 +02:00
Maze Winther d154937ac2 feat: lock playhead to frame (instead of floating) and add autoscroll to timeline 2025-07-26 22:25:57 +02:00
Maze Winther 906f95399d refactor: better error handling 2025-07-26 13:25:10 +02:00
Maze Winther 043bf7d70a fix: ensure clicking context menu item doesn't move timeline playhead 2025-07-26 12:34:57 +02:00
Maze Winther 317ee9141e style: make context menus appear above playhead 2025-07-26 12:27:28 +02:00
Maze Winther b0bcca18f8 Merge pull request [#437](https://github.com/mazeincoding/AppCut/issues/437) 2025-07-26 12:02:50 +02:00
Maze Winther 76ee723c37 refactor: use reusable PropertyItem component instead of local 2025-07-26 11:53:34 +02:00
Maze Winther ae94056952 fix: scroll in media panel 2025-07-26 11:50:12 +02:00
Maze Winther a4f1a02cea Merge pull request [#444](https://github.com/mazeincoding/AppCut/issues/444) 2025-07-26 11:35:52 +02:00
Maze Winther 00bcce8eca Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-07-26 11:29:30 +02:00
Maze Winther 70fe5cacd1 Merge pull request [#457](https://github.com/mazeincoding/AppCut/issues/457) 2025-07-26 11:29:19 +02:00
Maze 87a8ac90e5
Merge pull request #454 from dipanshurdev/text-feat
feat: update text color
2025-07-26 11:25:04 +02:00
Maze 4f60c0d354
Merge pull request #457 from itsobi/fix/properties-panel-gets-cut-off-on-smaller-browser-widths
Update PropertyItem component and frame rate dropdown to flex-col so label and value are not on the same line
2025-07-26 11:24:41 +02:00
Maze Winther 812bab4edf Merge pull request [#438](https://github.com/mazeincoding/AppCut/issues/438) 2025-07-25 19:18:10 +02:00
itsobi e3504de1f1 update PropertyItem component and frame rate dropdown to flex-col so label and value are not on the same line 2025-07-25 07:56:05 -05:00
Dipanshu Rawat 7e4a4e2095 feat: update text color 2025-07-25 14:39:42 +05:30
Hayden Bleasel 5931ddb77a
feat: add ultracite (#452)
* Init ultracite

* Update scripts and biome.jsonc

* Update biome.jsonc

* Update biome.jsonc

* Update biome.jsonc

* Run format
2025-07-25 00:41:34 +03:00
Maze Winther 68492df302 Merge pull request [#422](https://github.com/mazeincoding/AppCut/issues/422) 2025-07-22 12:43:27 +02:00
Maze Winther e7b89a4cc0 fix icon 2025-07-22 11:42:16 +02:00
Maze Winther fb5dca9f9d Merge branch 'main' into staging 2025-07-22 11:41:58 +02:00
chrissshan 205ad520f0 update icon 2025-07-22 01:11:12 -07:00
Maze Winther 550f5363fd consistent padding for media elements on timeline 2025-07-21 23:25:10 +02:00
Maze Winther 2bc3df5383 Merge pull request [#388](https://github.com/mazeincoding/AppCut/issues/388) 2025-07-21 23:07:23 +02:00
Maze Winther cf8c401a2a refactor: add TimelineToolbar back 2025-07-21 22:50:02 +02:00
Maze Winther ab82db6346 Merge pull request [#395](https://github.com/mazeincoding/AppCut/issues/395) 2025-07-21 21:42:44 +02:00
Maze Winther d364bffc1f Merge pull request [#386](https://github.com/mazeincoding/AppCut/issues/386) 2025-07-21 21:00:21 +02:00
Maze Winther 2517f77d42 refactor: move timeline components to /timeline 2025-07-21 18:49:30 +02:00
Maze Winther 5782df7350 remove toasts 2025-07-21 14:47:42 +02:00
Maze Winther 4c2d8c52ab feat: basic audio view in media panel 2025-07-21 11:52:48 +02:00
Maze Winther e74e60d5bf style: height in media panel 2025-07-21 11:52:35 +02:00
Maze Winther 5266aed5eb feat: ripple editing mode on timeline 2025-07-19 19:08:08 +02:00
Maze Winther 42ae8a7530 fix: ensure dragging/resizing an element on the timeline doesn't deselect it 2025-07-19 16:19:06 +02:00
Maze Winther 0d95f032cc fix: wrong logic on snapping button 2025-07-19 16:14:48 +02:00
Maze Winther a9b7043829 refactor: improve timeline elements, fix few bugs 2025-07-18 18:05:15 +02:00
Maze Winther 85b6123510 fix: z-index of playhead 2025-07-18 11:54:32 +02:00