Producer is a local-first desktop workspace for AI-era visual creators. It organizes briefs, storyboard shots, prompts, references, reviews, and outputs as a layered graph-of-graphs instead of a generic whiteboard or task board.
Producer 是一个面向 AI 时代视觉创作者的本地优先桌面工作台。它把 brief、storyboard、prompt、reference、review 与 result 组织成分层语义图,而不是通用白板、看板或可执行节点流。
- Create or open a local Producer project with
.producer/,assets/, andexports/. - Load the
ecommerce_ad_v1template manifest with strict layer and node whitelist validation. - Seed the root
Brief Canvasand enter a canvas-first workspace shell. - Persist project metadata in SQLite through a Rust domain core exposed by a thin Tauri bridge.
- Desktop shell: Tauri v2
- Core domain: Rust
- Storage: SQLite via
rusqlite - UI shell: React 19 + TypeScript + Vite
- Canvas/UI libraries: PixiJS, React Flow
- Tests: Vitest, Testing Library, Cargo test
- Node.js 20+
- npm 10+
- Rust stable toolchain
npm cinpm run devnpm run tauri:devnpm run buildThe frontend build is emitted to src-tauri/frontend-dist/ for Tauri packaging and is intentionally not checked into Git.
npm run lint
npm test
cargo test --manifest-path src-tauri/Cargo.toml --no-default-features.
├── docs/ # Product, architecture, and internal planning docs
├── public/ # Static public assets
├── src/ # React renderer and interaction layer
└── src-tauri/ # Rust domain core, migrations, and Tauri shell
- Documentation index
- Product vision / 产品愿景
- V1 roadmap / V1 路线图
- Architecture draft / 架构草案
- Data model / 数据模型
The current baseline covers the Phase 0 + Module A bootstrap. The near-term goal is a usable brief -> storyboard -> shot lab local workflow with stable graph navigation, node editing, fast creation, and persistence.
当前仓库实现的是 Phase 0 + Module A 的启动基线。近期目标是跑通 brief -> storyboard -> shot lab 的本地创作闭环,补齐图中图导航、节点编辑、快速加点和持久化能力。
Released under the MIT License.