Commit graph

27 commits

Author SHA1 Message Date
Danila Poyarkov 6eb206a451 Merge docs PR, fix all lint/typecheck errors, update changelog
- Merge add-vitepress-docs: docs site with 6 locales, SEO, user guide
- Remove VitePress cache files that slipped into git
- Fix all 11 oxlint warnings: replace non-null assertions in
  use-collab.ts with local const captures inside closures
- Update changelog with docs and lint fix entries
2026-03-07 23:19:19 +03:00
Anton A S e828185d9e Merge branch 'master' into add-vitepress-docs 2026-03-07 19:01:09 +03:00
Danila Poyarkov 2a86ea5ce5 Add renderer profiler with HUD overlay, GPU timing, and phase instrumentation
Profiler modules in packages/core/src/profiler/:
- FrameStats: rolling 120-frame buffer tracking FPS, CPU/GPU times, node counts
- GpuTimer: EXT_disjoint_timer_query_webgl2 wrapper for GPU-side timing
- DrawCallCounter: WebGL context proxy counting draw calls per frame
- PhaseTimer: Chrome DevTools Performance panel custom tracks via User Timing API
- HudRenderer: in-canvas overlay with stats text and frame time bar graph
- CaptureStack: per-node profiling with speedscope JSON export
- RenderProfiler: orchestrates all layers with zero cost when disabled

Integration:
- SkiaRenderer.render() instrumented with phase markers for scene, picture
  recording/replay, section titles, component labels, selection, rulers, flush
- Node counting and viewport culling tracking in renderNode()
- WebGL2 context passed through for GPU timer and draw call counter
- Shift+P keyboard shortcut to toggle HUD overlay
- toggleProfiler() added to editor store
2026-03-04 14:13:17 +03:00
Anton A S 5fa8284766 Merge origin/master 2026-03-01 18:23:32 +03:00
Danila Poyarkov 7ff37dc240 Plan: eval command with Figma-compatible plugin API 2026-03-01 16:07:27 +03:00
Danila Poyarkov 96d8ab5789 Move docs to packages/docs, add Cloudflare Pages deploy
- Move docs/ → packages/docs/ as @open-pencil/docs workspace package
- Add screenshot.png as hero image on landing page
- Add GitHub Actions workflow for Cloudflare Pages deploy (openpencil.dev)
- Remove vitepress from root devDependencies
- Root docs:* scripts delegate via bun --filter
2026-03-01 15:16:16 +03:00
Anton A S 5b7de9fe99 Sync docs with README motivation: landing, features, comparison, user guide 2026-03-01 13:58:54 +03:00
Anton A S 5eb1b30390 Separate User Guide sidebar scope, remove redundant shortcut notes 2026-03-01 13:51:31 +03:00
Anton A S de048b4d21 Add User Guide section with 11 articles derived from OpenSpec specs
New docs/user-guide/ section covering: canvas navigation, selection &
manipulation, drawing shapes, text editing, pen tool, layers & pages,
context menu, exporting, auto-layout, components, and variables.

Each article includes Mac+Win/Linux shortcuts tables, cross-platform
note, cross-links between related articles, and consistent structure.

VitePress sidebar updated with User Guide as first group (12 entries).
2026-03-01 13:02:47 +03:00
Anton A S 15abce330f Sync specs & docs: AI chat, Code panel, JSX export
- Merge from master: 19 commits (AI chat + Code tab)
- Update specs: editor-ui (Properties panel → Design|Code|AI tabs,
  AI chat panel, model selector, 10 AI tools, DirectChatTransport,
  Code panel with JSX export), scene-graph (sceneNodeToJsx),
  testing (AI chat Playwright, 14 JSX export tests)
- Update docs: features (AI Chat + Code Panel sections, Properties
  Panel tabs), figma-comparison (AI tools 🟡, Dev Mode 🟡,
  Code snippets 🟡, 83/150), roadmap (Phase 5 AI + Code),
  keyboard-shortcuts (⌘J , ⌘B/I/U )
- Archive sync-ai-chat-code-tab change
2026-03-01 12:33:57 +03:00
Danila Poyarkov 63748ecee6 Plan: eval command with Figma-compatible plugin API 2026-03-01 12:13:31 +03:00
Anton A S 5fbad7b092 Sync specs & docs: style runs, JSX renderer, CLI expansion, tests
- Merge from master: 22 commits (rich text, JSX renderer, CLI, dedup, tests)
- Update specs: text-editing (style runs, ⌘B/I/U, .fig roundtrip,
  double/triple-click, selectLine), canvas-rendering (mixed-style
  ParagraphBuilder), editor-ui (B/I/U/S buttons), cli (analyze, node,
  pages, variables), tooling (jscpd, kiwi-serialize, test:coverage),
  testing (.fig roundtrip, import perf, JSX tests), scene-graph
  (StyleRun model, JSX renderer)
- Update docs: features (rich text formatting, JSX renderer, expanded
  CLI, code quality), figma-comparison (Text styles 🔲🟡, 80/150),
  roadmap (Phase 4+5 delivered items)
- Archive sync-style-runs-jsx-cli-tests change
2026-03-01 12:09:41 +03:00
Danila Poyarkov 017b0aa3c1 Move AI chat design into plan.md Phase 5 2026-03-01 10:14:40 +03:00
Danila Poyarkov af6a98ca56 AI chat: JSX-first rendering, guardrail tools, workflow from figma-use 2026-03-01 10:12:01 +03:00
Danila Poyarkov 4fb929073a AI chat design document 2026-03-01 10:09:09 +03:00
Anton A S 824193ab7a Sync specs & docs: canvas-native text editing, font-kit, variables dialog
- Merge from master: 19 commits (text editing, system fonts, variables UI)
- Update specs: text-editing (canvas-native, TextEditor, phantom textarea,
  font picker, keyboard nav, mouse selection), canvas-rendering (selection
  rects, blinking caret), editor-ui (Variables dialog with TanStack Table,
  ColorInput, alpha checkerboard, demo collections), desktop-app (font-kit
  commands, CSS font faces, app identity), undo-redo (variable operations)
- Update docs: features (text editing, font picker, variables, undo),
  figma-comparison (notes for text/fonts/variables rows),
  roadmap (Phase 4 delivered items)
- Archive sync-text-editing-fonts-variables-ui change
2026-03-01 09:47:46 +03:00
Anton A S adea7eb645 Sync specs & docs: variables, image export, CLI, core extraction
- Update specs: scene-graph (variables/collections/modes/bindings/.fig import),
  editor-ui (VariablesPanel, ExportSection, splash), canvas-rendering
  (variable resolution, image export, sceneVersion/renderVersion),
  desktop-app (monorepo), tooling (Bun workspace), testing (variable tests)
- Create cli spec: info, tree, find, export commands
- Update docs: features, figma-comparison (79/150), roadmap (Phase 4 ,
  Phase 5 🟡), keyboard-shortcuts (⇧⌘E), contributing (monorepo structure)
- Restore vitepress devDependency lost during merge
- Archive sync-variables-export-cli change
2026-03-01 02:17:48 +03:00
Anton A S 82302de176 Sync specs and docs with master: AGENTS.md, CLI plan, app identifier, offline messaging
Sync 8 commits from master (70c88dd..7ff16f7):
- App identifier fixed to net.dannote.open-pencil
- AGENTS.md reference added to contributing docs
- CLI & Headless Mode added to Phase 5 roadmap
- Offline messaging added to Desktop App feature docs
- MCP server row updated with CLI/headless note
2026-03-01 00:02:05 +03:00
Anton A S 6503c9a267 Sync specs and docs with master: polygon/star tools, resizable panels, code quality
Sync 12 commits from master (af3db9f..70c88dd):
- Polygon and Star drawing tools in shapes flyout
- Resizable left/right panels via reka-ui Splitter
- @/ import alias, shared types (src/types.ts, src/global.d.ts)
- Codebase lint-clean: 0 oxlint warnings, 0 tsgo type errors
- oxfmt formatting, Firefox spinner fix, ScrubInput cursor fix

Updated: 4 openspec specs, 4 VitePress docs pages
2026-02-28 23:25:57 +03:00
Anton A S c03f605a22 Sync specs and docs with master: live sync, effects panel, independent corners, CI
Sync 10 commits from master (68425a0..af3db9f):
- Live component-instance sync with override preservation
- Effects section in properties panel (shadow/blur controls)
- Independent corner radius controls (per-corner toggle)
- GitHub Actions CI/CD for Windows and macOS builds
- Mac shortcut fixes

Updated: 5 openspec specs, 3 VitePress docs pages, Figma comparison matrix
2026-02-28 22:20:16 +03:00
Anton A S 6d90528bde Sync specs and docs with master: components, context menu, z-order, visibility, lock 2026-02-28 19:48:19 +03:00
Anton A S 68425a05c7 Add Figma Feature Matrix comparison page to docs 2026-02-28 19:35:34 +03:00
Anton A S fd8b718469 Add OpenPencil vs Penpot comparison page to docs 2026-02-28 18:39:10 +03:00
Anton A S 6779179c1a Fix review: COMPONENT_SET in table, fill picker tabs, hero image, MCP planned, roadmap title 2026-02-28 17:57:59 +03:00
Anton A S 65344b6300 Update specs and docs for 39 new commits: sections, pages, .fig export, rendering 2026-02-28 17:54:56 +03:00
Anton A S bb0ed370c0 Fix PR review: remove .openpencil from docs, kbd tags for shortcuts, trailing newline 2026-02-28 17:32:18 +03:00
Anton A S d0e3c014f7 OpenSpec baseline specs, VitePress docs, Windows build support 2026-02-28 17:32:17 +03:00