feat(presets): Reusable Profiling Recipes and Preset Management #88

Closed
opened 2026-08-25 15:47:43 +01:00 by gronod · 2 comments
Owner

Description

Enable saving, loading, exporting, and importing complete profiling presets ("Recipes"). A Recipe captures all configuration parameters across Stages 1, 2, and 4 to allow one-click setup for recurring media and ink configurations.

Scope & Technical Requirements

  • Recipe Schema:
    • Stage 1: Color space (RGB/CMYK), patch count, white/black points, neutral axis preconditioning.
    • Stage 2: Target instrument, page geometry, DPI, bit depth, layout options.
    • Stage 4: colprof quality level, algorithm (cLUT / Matrix), intent, description template, copyright.
  • Storage: Stored in settings.json under recipes: Vec<ProfilingRecipe> with export/import as JSON files.
  • UI: "Load Recipe" and "Save Recipe" buttons in header toolbar and stage panels.

Acceptance Criteria

  • Presets can be created, saved with custom names, and applied in the UI.
  • Applying a recipe auto-populates fields across Stages 1, 2, and 4.
  • Export and import of .recipe.json files supported.

Dependencies & Ordering

  • Milestone: Milestone 8 (v0.3.0)
  • Ordering: Step 4
  • Dependencies: None (Independent feature)
### Description Enable saving, loading, exporting, and importing complete profiling presets ("Recipes"). A Recipe captures all configuration parameters across Stages 1, 2, and 4 to allow one-click setup for recurring media and ink configurations. ### Scope & Technical Requirements - Recipe Schema: - Stage 1: Color space (RGB/CMYK), patch count, white/black points, neutral axis preconditioning. - Stage 2: Target instrument, page geometry, DPI, bit depth, layout options. - Stage 4: colprof quality level, algorithm (cLUT / Matrix), intent, description template, copyright. - Storage: Stored in `settings.json` under `recipes: Vec<ProfilingRecipe>` with export/import as JSON files. - UI: "Load Recipe" and "Save Recipe" buttons in header toolbar and stage panels. ### Acceptance Criteria - [ ] Presets can be created, saved with custom names, and applied in the UI. - [ ] Applying a recipe auto-populates fields across Stages 1, 2, and 4. - [ ] Export and import of `.recipe.json` files supported. ### Dependencies & Ordering - **Milestone**: Milestone 8 (`v0.3.0`) - **Ordering**: Step 4 - **Dependencies**: None (Independent feature)
gronod added this to the Milestone 8: Advanced Measurement & Workflow Enhancements (v0.3.0) milestone 2026-08-25 15:47:43 +01:00
gronod added the Kind/Feature
Priority
Medium
3
labels 2026-08-25 15:47:43 +01:00
gronod added the
Reviewed
Confirmed
1
label 2026-08-25 16:40:35 +01:00
Author
Owner

Do not use the term "recipe" in the UI.

Do not use the term "recipe" in the UI.
Author
Owner

Completed and merged via PR #100.

  • Implemented ProfilingPreset data models and backend commands in src-tauri/src/settings.rs and lib.rs.
  • Added standard built-in presets for RGB and CMYK workflows.
  • Added preset selector in UI header/sidebar and management/export/import modals in src/js/presets.js and src/index.html.
  • Adhered strictly to "Preset" terminology across all code, models, and UI.
  • All CI test runs (#7129 and #7130) passed.
Completed and merged via PR #100. - Implemented `ProfilingPreset` data models and backend commands in `src-tauri/src/settings.rs` and `lib.rs`. - Added standard built-in presets for RGB and CMYK workflows. - Added preset selector in UI header/sidebar and management/export/import modals in `src/js/presets.js` and `src/index.html`. - Adhered strictly to "Preset" terminology across all code, models, and UI. - All CI test runs (#7129 and #7130) passed.
Sign in to join this conversation.