- Desktop shell: Tauri 2 (single window; UI served from Vite dev server or bundled
dist/). - UI: React app with shell (layout, nav), Repository view, Parametric designer, Visual editor, Export.
- Core: Repository service (CRUD, metadata), Parametric engine (FreeSewing), Vector/grading engine, Export service.
- Data: Local store (SQLite or IndexedDB) for repository metadata; project files (JSON) for visual patterns and parametric presets.
- Shell / Layout — Menu, sidebar, pattern list, active view.
- Repository — List, search, add, remove patterns; open parametric or visual.
- Parametric — Pick FreeSewing design, measurements form, generate SVG for one or many sizes, save to repo.
- Visual — Canvas for pieces (points, curves), grading table, generate sizes, save to repo.
- Export — SVG/PDF from parametric or visual; print layout (Phase 3).
- Frontend:
src/App.tsx,src/views/,src/components/,src/hooks/,src/services/ - Tauri:
src-tauri/src/lib.rs(commands),src-tauri/capabilities/ - Data: SQL schema, JSON schema for visual project file
See the main plan for the full diagram and phase breakdown.