Commit Graph

106 Commits

Author SHA1 Message Date
Maze Winther 9da0dfc107 fix: clear timeline/media on new project creation to prevent state leakage 2025-08-16 18:26:41 +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
Maze Winther 7f91c9ca00 Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-08-15 02:12:16 +02:00
Maze Winther 5e8a489a14 refactor: remove test 2025-08-15 02:12:10 +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
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
Sai Teja 3807e146e4
feat(playback): restart from beginning when play pressed at end of timeline (Fixes #536) (#542) 2025-08-12 00:25:52 +02:00
Maze Winther 54e990af26 Merge pull request [#514](https://github.com/mazeincoding/AppCut/issues/514) 2025-08-09 11:02:01 +02:00
ryu e71788014d
Merge branch 'main' into feat/timeline-return-to-start 2025-08-07 19:37:06 +05: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 9ec5a02252 feat: layout guide for tiktok 2025-08-04 17:17:48 +02:00
Maze Winther acc2089d0d feat: add license filtering for sound effects 2025-08-04 02:59:07 +02:00
Maze Winther 48b694bbd8 feat: sound effects functionality with freesound's api 2025-08-04 01:30:33 +02:00
Maze Winther 68da487f30 style: complete re-design of whole editor 2025-08-01 19:57:26 +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 1603dd0e58 fix: set default fps on project creation 2025-07-31 21:47:02 +02: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 b2cd730fb7 Merge branch 'staging' of https://github.com/mazeincoding/AppCut into staging 2025-07-31 13:12:02 +02:00
Maze Winther 5f4f3cc6c4 Merge pull request [#499](https://github.com/mazeincoding/AppCut/issues/499) 2025-07-31 13:10:37 +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
Maze Winther 906f95399d refactor: better error handling 2025-07-26 13:25:10 +02:00
Maze Winther 14475dc9a6 fix: prevent resizing elements on the timeline further than the timeline start 2025-07-26 13:13:27 +02:00
Maze Winther 6dfc80cd70 Merge pull request [#433](https://github.com/mazeincoding/AppCut/issues/433) 2025-07-26 12:54:50 +02:00
Maze Winther f312d758da feat: undo for when an element gets deleted from media item deletion 2025-07-26 12:24:18 +02:00
Maze Winther 309a2ecb61 Merge pull request [#423](https://github.com/mazeincoding/AppCut/issues/423) 2025-07-26 12:22:12 +02:00
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 87a29963c3 Merge pull request [#366](https://github.com/mazeincoding/AppCut/issues/366) 2025-07-22 12:36:17 +02:00
Maze 2791992b6b
Merge pull request #408 from treepo1/feat/select-layer-when-inserted
[FEATURE] Select layer when adding to the Timeline
2025-07-22 11:58:34 +02:00
Maze Winther c783062121 feat: ensure text tracks are always created above media tracks 2025-07-22 01:01:54 +02:00
Thiago Freire 301edd0749 feat: automatically select layer when is added to the timeline 2025-07-21 19:59:18 -03:00
Maze Winther a2a9bef1d8 fix: undo for resizing timeline elements 2025-07-21 14:46:28 +02:00
Maze Winther aeb9cfc6b8 fix: AZERTY support for keyboard shortcuts 2025-07-21 12:23:09 +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 a9b7043829 refactor: improve timeline elements, fix few bugs 2025-07-18 18:05:15 +02:00
Anwarul Islam 23001f8442 feat: define keybinding types and refactor keybinding configuration 2025-07-18 15:19:46 +06:00
Anwarul Islam c3caefc001 feat: enhance keybinding import validation and improve error handling 2025-07-18 08:30:42 +06:00
Anwarul Islam 8e4661951d feat: enhance keybinding management by integrating keybindingsEnabled state and updating related hooks 2025-07-18 08:05:02 +06:00
Anwarul Islam 4137747aba feat: add keybindings store with default configurations and utility functions 2025-07-18 07:35:31 +06:00
Maze Winther fe5b208a18 Merge branch 'feat/search-sort-projects' into staging 2025-07-17 17:11:56 +02:00
Maze Winther b18a48b586 refactor: move sorting logic to project store 2025-07-17 13:45:12 +02:00
Maze 5a7a089f0e
Merge pull request #323 from khanguyen74/feature/regenerate-media-items-thumbnail
fix: regenerate video thumbnails when a project is loaded
2025-07-17 13:06:06 +02:00
Kha Nguyen 36df8f2afe chore: format 2025-07-16 16:55:35 -05:00
Kha Nguyen 9f3ba9905d fix: regenerate video thumbnails when loading project 2025-07-16 16:49:08 -05:00
Maze Winther dc0e4783fb cleanup 2025-07-15 16:55:04 +02:00
Maze Winther 1fdf2a0515 cleanup 2025-07-15 14:16:54 +02:00