Power users who export to the same non-standard settings repeatedly (e.g. 1080x1350 at CRF 20 in WebM) have to re-enter these values every time. Saving custom presets to localStorage would make Reframe stickier for regular users.
What to build
Allow users to save the current EditRecipe as a named custom preset:
- A "Save preset" button near the preset selector
- A text input modal to name the preset (e.g. "Instagram portrait 1080p")
- The saved preset appears in the preset dropdown under a "Custom" section
- A delete button (x) on each custom preset removes it
- Custom presets stored in localStorage as a JSON array
Files to modify
src/components/PresetSelector.tsx — add custom preset section + save button
src/lib/presets.ts — separate built-in from custom presets
src/hooks/useVideoEditor.ts — add save/delete/load custom preset actions
Acceptance criteria
Screen Recording Required
Your PR for this issue must include a screen recording showing the feature working on your local machine (bun run dev → http://localhost:3000). PRs without a recording will not be merged.
See CONTRIBUTING.md for how to record.
Power users who export to the same non-standard settings repeatedly (e.g. 1080x1350 at CRF 20 in WebM) have to re-enter these values every time. Saving custom presets to localStorage would make Reframe stickier for regular users.
What to build
Allow users to save the current EditRecipe as a named custom preset:
Files to modify
src/components/PresetSelector.tsx— add custom preset section + save buttonsrc/lib/presets.ts— separate built-in from custom presetssrc/hooks/useVideoEditor.ts— add save/delete/load custom preset actionsAcceptance criteria
Screen Recording Required
Your PR for this issue must include a screen recording showing the feature working on your local machine (
bun run dev→ http://localhost:3000). PRs without a recording will not be merged.