CanvasAnvil
One prompt, three pipelines: Flow / CAD / PPT Flow: Conversational flowchart generation with patch / replace CAD: Interior design → analysis → 2D plans (SVG) → renderings → BOM PPT: Structured slides from a topic, with incremental editing & NotebookLM PPT support
Install / Use
/learn @CodingFeng101/CanvasAnvilREADME
CanvasAnvil is a multi-canvas AI creation platform for flow diagrams, CAD workflows, and PPT generation/editing.
Release
Current release: v1.0.1
v1.0.1 is a patch release focused on persistence fixes. PPT and CAD workspace images now survive refreshes more reliably and remain stored unless the user explicitly clears the workspace.
v1.0.0 remains the first major usable release with stronger PPT editing support, especially for refining existing slide decks such as NotebookLM-exported PPTs.
Patch Highlights in v1.0.1
- Fixed PPT workspace image persistence across refreshes by moving heavy image state to IndexedDB-backed storage
- Fixed PPT restore ordering so lightweight snapshots no longer override the latest persisted image state
- Fixed CAD render and analysis image persistence across refreshes with IndexedDB-backed storage and safer placeholder handling
Highlights in v1.0.0
- Unified multi-canvas workflow across
Flow,CAD, andPPT - Support for text editing on PPT files exported from NotebookLM
- Better editing workflows for existing PPT decks instead of only first-pass generation
- PPT image uploads no longer bloat chat input with raw base64 data
- PPT image generation and image-edit requests now go through a local proxy route for better browser compatibility
- More stable image-reference routing with image count limits, compression, and fallback retry behavior
- Fixed multiple garbled text issues in PPT workspace and repo docs
Canvas Previews
<table> <tr><td width="680" align="center"><strong>Flow Canvas</strong></td></tr> <tr><td width="680" align="left"><img src="public/demos/flow.gif?raw=1" alt="Flow canvas" width="680" /></td></tr> </table> <table> <tr><td width="680" align="center"><strong>CAD Canvas</strong></td></tr> <tr><td width="680" align="left"><img src="public/demos/cad.gif?raw=1" alt="CAD canvas" width="680" /></td></tr> </table> <table> <tr><td width="680" align="center"><strong>PPT Canvas</strong></td></tr> <tr><td width="680" align="left"><img src="public/demos/ppt.gif?raw=1" alt="PPT canvas" width="680" /></td></tr> </table>Online Demo
Video Tutorials
Capability Overview
Flow: flowchart generation and partial edits based on draw.io XMLCAD: interior workflow planning, analysis boards, 2D floor plans, render-task generation, and BOMPPT: structured slide generation, page-level editing, image-assisted iteration, and export
Quick Start
- Install dependencies
npm install
- Start local development
npm run dev
Default URL: http://localhost:5173
- Run type checks
npm run check
- Build for production
npm run build
Useful Scripts
npm run dev: start Vite development servernpm run dev:full: start web and API dev servers togethernpm run dev:web: start frontend dev servernpm run dev:api: start API dev servernpm run check: TypeScript checknpm run lint: ESLintnpm run build: production buildnpm run preview: preview built appnpm start: run API server
Development Notes
- AI configuration is read from local app settings and can be routed to custom providers
- PPT local development now depends on the local
/api/ppt-aiproxy route - After changing local API route wiring in
vite.config.ts, restart the dev server
Project Structure
.
├─ agent/ # Agent prompts and sub-agent specs
├─ public/ # Static assets
├─ src/
│ └─ workspaces/
│ ├─ flow/ # Flow canvas
│ ├─ cad/ # CAD canvas
│ └─ ppt/ # PPT canvas
├─ api/ # Local API route entrypoints
└─ README.md
Origins and Integrations
- Flow canvas: integrated and extended from next-ai-draw-io
- PPT canvas: integrated and extended from banana-slides
- CAD canvas: built in-house, including agent workflow, 2D SVG editing, render orchestration, and BOM pipeline
Docs
- Deployment guide: deploy/README.md
Contact
Scan the WeChat QR code below to contact the author.
<p align="left"> <img src="public/wechat.jpg" alt="WeChat QR code" width="280" /> </p>Related Skills
bluebubbles
334.9kUse when you need to send or manage iMessages via BlueBubbles (recommended iMessage integration). Calls go through the generic message tool with channel="bluebubbles".
slack
334.9kUse when you need to control Slack from OpenClaw via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
frontend-design
82.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
Writing Hookify Rules
82.3kThis skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.
