Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
3.1 KiB
ICCery Rewrite Specification
Product: ICCery — printer ICC/ICM profiling frontend for ArgyllCMS
Source analysed: git.i3omb.com/gronod/ICCery v0.8.5 (main, merge #229)
Related: gronod/argyllcms (fork of ArgyllCMS 3.5.0), gronod/ICCery-CPU (TargetPrint)
Current stack (do not reuse): Tauri v2 + Rust host + vanilla JS + Three.js
Licence: ICCery GUI is proprietary EULA; ArgyllCMS binaries are AGPLv3 and must remain subprocess-isolated (stdin/stdout/stderr only — never link)
This folder is a complete functional specification of the existing application so it can be reimplemented in a different stack under the same name, using the same graphical assets (CMY ice-cream-cone wordmark).
How to use these documents
Read in this order if you are implementing:
- 01-overview.md — product, wizard, platforms
- 02-architecture.md — process isolation, modules, events
- 03-ipc-and-process-manager.md — spawn / stdin / kill contract
- 04-argyll-binaries.md — every Argyll CLI invocation
- 05-argyll-fork.md —
-uJSON protocols,instlist,-Y l, Windows pipe fix - Wizard stages: 06 → 07 → 08 → 09 → 15 → 16 → 17
- Print (critical): 10 → 11-print-macos.md → 12 → 13 → 14
- 18-gamut-viewer.md
- 21-ui-reference.md — every control id
- 24-issues-invariants.md — bugs that must not be repeated
- 25-rewrite-notes.md — stack-agnostic idiosyncrasies
- 26-v2-mac-ticket-plan.md — reviewed Gitea milestone/ticket plan for the macOS SwiftUI rewrite (executable; supersedes the 2026-09-08 draft)
Non-goals of the original (do not reintroduce)
- Display calibration wizard (
dispwin/dispread) — won't-fix (#90) - i18n (en/de/fr/ja) — won't-fix (#96); Argyll diagnostics are English-only
- Linking against Argyll as a library (AGPL contamination)
Source map (legacy Tauri tree)
| Area | Path |
|---|---|
| Wizard HTML | src/index.html |
| Frontend modules | src/js/*.js |
| Styles | src/styles/main.css |
| Logo | src/assets/ICCery-logo.svg |
| Rust host | src-tauri/src/ |
| Print backends | src-tauri/src/print/{mod,macos,windows,unix}.rs |
| Argyll sidecars | src-tauri/argyll/<platform>/ (not in git; npm run fetch-argyll) |
| Bundled sRGB gamut | src/assets/sRGB.gam |
Analysed at 2026-09-08 from Gitea (109 ICCery issues, 13 Argyll-fork issues, 3 ICCery-CPU issues) plus a full source read of v0.8.5.