- Initialize Tauri + React + TypeScript app
- Add React Flow
- Add Zustand
- Define base project folder layout
- Define TypeScript domain models
- Define repository interfaces for projects and assets
- Set up base workspace layout
- Add home screen for project list
- Implement Tauri command to list projects
- Implement Tauri command to create a project
- Implement Tauri command to rename a project
- Implement Tauri command to delete a project
- Implement Tauri command to load a project
- Implement Tauri command to save a project
- Add project create flow in the UI
- Add project rename flow in the UI
- Add project delete flow in the UI
- Add React Flow canvas with project graph binding
- Implement custom node shell component
- Implement
Promptnode - Implement
Reference Imagenode - Implement
Remove Backgroundnode - Implement
Generate Scenenode - Implement
Place Productnode - Implement
Upscalenode - Implement
Exportnode - Add connection validation by node IO type
- Save viewport and graph updates
- Add moodboard panel to the workspace
- Implement image import into project moodboard folder
- Persist moodboard item metadata
- Show moodboard thumbnail grid
- Add title and note editing for moodboard items
- Add delete action for moodboard items
- Add large preview for a moodboard image
- Create Fal client wrapper
- Define runtime state model
- Implement graph validation
- Implement topological execution order
- Implement node execution dispatcher
- Add run status in the UI
- Add node-level loading and error states
- Persist output metadata
- Create outputs panel
- Show generated images for the project
- Add output preview
- Add export/save convenience actions
- Create
Beauty Campaignstarter template - Add empty-state guidance for new users
- Review naming and labels for non-technical users
- Add basic error messaging for failed runs
- Test project reopen flow end-to-end
- Add
Interior Restyletemplate - Add reorder support for moodboard items
- Add project thumbnails
- Add prompt helpers based on moodboard references
- Evaluate SQLite when project metadata and history become more complex