Commit graph

14 commits

Author SHA1 Message Date
Danila Poyarkov c2e77ff63d Fix Figma MCP timeline, update tool counts to 26, add AI providers to roadmap 2026-03-02 08:19:08 +03:00
Danila Poyarkov ca5f0929d1 Add roadmap to README, update plan.md to current state 2026-03-02 07:56:52 +03:00
Danila Poyarkov c59d5fc397 Add Code tab with JSX export and syntax highlighting
- sceneNodeToJsx() in @open-pencil/core: converts SceneNode subtree to JSX
- CodePanel.vue with Prism.js highlighting, line numbers, copy button
- Third tab in properties panel: Design | Code | AI
- 14 new tests covering shapes, text, layout, effects, multi-selection
2026-03-01 12:12:45 +03:00
Danila Poyarkov cc5dda29d9 AI chat: no backend, direct OpenRouter from browser, Stronghold for key storage 2026-03-01 10:23:53 +03:00
Danila Poyarkov 017b0aa3c1 Move AI chat design into plan.md Phase 5 2026-03-01 10:14:40 +03:00
Danila Poyarkov 0df5492542 Document kiwi decoder benchmark: JS vs Rust findings 2026-03-01 10:08:14 +03:00
Danila Poyarkov 2fb22786c1 Add types/shared code and test strategy to CLI plan 2026-03-01 00:03:26 +03:00
Danila Poyarkov e8223287df Validate all CLI risks: CanvasKit CPU, headless fonts, extraction scope 2026-03-01 00:00:31 +03:00
Danila Poyarkov 44e914d410 Detailed CLI & headless implementation plan 2026-02-28 23:58:47 +03:00
Danila Poyarkov f61d8c0d83 Add headless rendering plan (CanvasKit CPU rasterizer) 2026-02-28 23:54:10 +03:00
Danila Poyarkov 7ff16f70e0 Fix app identifier to net.dannote.open-pencil, add CLI/headless plan to PLAN.md 2026-02-28 23:51:22 +03:00
Danila Poyarkov d33efa1228 Update PLAN.md with Yoga CSS Grid PR tracking details 2026-02-28 23:17:39 +03:00
Danila Poyarkov ede6cf27d7 Add full keyboard shortcut reference to PLAN.md, fix zoom speed
Shortcut table covers all Figma shortcuts organized by category
(tools, file, edit, view, object, text, arrange, canvas interaction)
with implementation status tracking.

Zoom: use continuous exponential scaling (0.99^deltaY) instead of
fixed 1.1/0.9 factor per event.
2026-02-27 23:10:27 +03:00
Danila Poyarkov 68b54ad6b7 Initial commit: Tauri + CanvasKit + React editor scaffold
- Tauri v2 desktop shell with 1280x800 window
- CanvasKit WASM (Skia) rendering via WebGL2
- Scene graph with typed nodes (Frame, Rectangle, Ellipse, Line, etc.)
- Skia renderer with fills, strokes, rounded corners, opacity, rotation
- Selection system with resize handles
- Undo/redo manager (inverse command pattern with batching)
- Bottom toolbar (Select, Frame, Rect, Ellipse, Line) matching Figma UI3
- Left layers panel, right properties panel
- Pan (scroll), zoom (Ctrl+scroll toward cursor)
- Keyboard shortcuts: V/F/R/O/L for tools, Cmd+Z undo, Backspace delete
- 5 demo shapes rendered on canvas
2026-02-27 15:48:29 +03:00