Danila Poyarkov
c1d7fc80b0
Fix property panel visibility toggles, independent corners/stroke sides, extract shared ColorStyleRow
...
- Fix fill/stroke/effect/appearance visibility eye toggle (stale clone reads)
- Fix independent corner radii toggle not showing 4 inputs
- Fix stroke sides toggle: replace dropdown with direct toggle like corners
- Copy uniform weight to all sides when expanding stroke sides
- Batch multi-selection visibility toggles into single undo entry
- Extract ColorStyleRow shared by FillSection and StrokeSection
- Replace useFillVariableBinding/useStrokeVariableBinding with useColorVariableBinding(kind)
- AppearanceSection uses useAppearance() directly instead of slot wrapper
- Add sceneVersion dependency to useNodeProps and PropertyListRoot computeds
- Add E2E tests for visibility toggles and corner/stroke side toggles
2026-03-27 17:06:33 +03:00
Danila Poyarkov
99e646aaa4
Refine docs structure for SDK and automation
2026-03-24 23:24:08 +03:00
Danila Poyarkov
fe755fbb85
Release v0.9.0
2026-03-09 17:43:11 +03:00
Danila Poyarkov
f2ef9c976d
XPath query for node selection ( #82 )
...
* Add XPath query for node selection
- packages/core/src/xpath.ts: XPath engine using fontoxpath with custom
DOM facade over SceneGraph nodes
- RPC command: 'query' with selector, page, limit params
- CLI command: 'open-pencil query <file> <xpath>' with --json, --page, --limit
- AI/MCP tool: 'query_nodes' with XPath examples in description
- Queryable attributes: name, width, height, x, y, visible, opacity,
cornerRadius, fontSize, fontFamily, fontWeight, layoutMode, itemSpacing,
padding*, strokeWeight, rotation, locked, blendMode, text, lineHeight,
letterSpacing
* Add tests and docs for XPath query
- 9 unit tests for queryByXPath/matchByXPath core functions
- 6 tool tests for query_nodes AI/MCP tool
- README: query examples in CLI section
- VitePress docs: patterns, queryable attributes, example output
- CHANGELOG: feature entry
* Lazy-load fontoxpath to avoid bundling in desktop app
- Dynamic import() instead of static import for fontoxpath
- queryByXPath/matchByXPath now async (they were sync before)
- RpcCommand.execute allows R | Promise<R> for async commands
- Fix 2 lint errors (unnecessary optional chain, always-truthy)
- Update all tests and CLI to await results
2026-03-09 15:32:27 +03:00
Danila Poyarkov
c98ac0f230
Update README and docs for CSS Grid support
...
- Add 'Auto layout & CSS Grid' to README features
- Update architecture, tech-stack, features, figma-comparison, comparison
- Mark grid as ✅ in all 7 locales
- Replace 'blocked on upstream' with Yoga fork links
2026-03-08 18:29:44 +03:00
Danila Poyarkov
bfa4b7de8b
Translate AI & Automation + CLI reference to all 6 locales
...
48 translated pages (de, es, fr, it, pl, ru) for the Programmable
section: overview, AI Chat, Collaboration, JSX Renderer, CLI
(inspecting, exporting, analyzing, scripting).
CLI reference and MCP server pages copied as-is (mostly code/tables).
2026-03-08 18:25:35 +03:00
Danila Poyarkov
e5b147148e
Add AI & Automation docs section, CLI reference, formatting fixes
...
New 'AI & Automation' top-level nav section with 9 pages:
- AI Chat: setup, 87 tools, example prompts
- Collaboration: room sharing, cursors, follow mode
- JSX Renderer: elements, style props, visual diffing
- CLI (4 pages): inspecting, exporting, analyzing, scripting
- MCP Server: moved from Reference, setup + 90 tools
New CLI reference page in Reference with all 12 commands,
every option, alias, and default value.
Formatting fixes across all 7 locales:
- Wrap enum values in backticks (FRAME, SOLID, ROUND, etc.)
- Fix single-backtick code blocks → triple backticks
- Use <kbd> for all keyboard shortcuts
- Remove implementation details from user guide
- Delete stale eval-command.md and mcp-tools.md (14 files)
- Update dead links to new locations
2026-03-08 18:25:35 +03:00
Danila Poyarkov
52b9ebc5c2
Add Russian locale (ru) to docs
2026-03-08 11:40:19 +03:00
Danila Poyarkov
e67dd3fbd9
Rewrite docs: landing page, features, architecture — all 6 locales
...
- Landing page: reorder features (Figma-compatible first), add collaboration card, fix app size
- Features: cut implementation details, group into clear sections, add MCP/CLI/Homebrew
- Architecture: replace ASCII diagram with mermaid, add RPC bridge, update tool counts
- Remove ~500 lines of internal implementation prose from user-facing docs
2026-03-08 11:04:26 +03:00
Danila Poyarkov
0109d33846
Add AI agent skill to README and docs
...
- README: new 'AI Agent Skill' section with install command
- MCP tools reference: skill section, fix tool count 78→90,
add 10 missing tools (export_image, export_svg, flatten_nodes,
list_fonts, page_bounds, set_layout_child, set_text_properties,
viewport_get, viewport_set, viewport_zoom_to_fit)
- Features page: mention skill with install command
- All 6 locales updated
2026-03-08 01:08:28 +03:00
Danila Poyarkov
5ac70a5976
Update docs: tool counts 75/78 → 87/90, schema.ts → tools/ directory, add RPC bridge
2026-03-08 00:28:11 +03:00
Danila Poyarkov
9882375b4f
Release v0.8.0
2026-03-08 00:20:47 +03:00
Anton A S
513e0b6f4a
Add SEO: OG tags, Twitter Card, hreflang, JSON-LD, sitemap
...
- config.ts: og:site_name, og:image (+w/h/alt), twitter:card/site/image
- config.ts: transformPageData — per-page canonical, og:url, og:locale,
og:locale:alternate, hreflang for all 6 locales + x-default,
og:title/description and twitter:title/description from frontmatter
- config.ts: sitemap with xhtml:link alternates for all 174 pages × 6 locales
- SchemaOrg.vue: SoftwareApplication JSON-LD on EN homepage only
- HomeLayout.vue: render SchemaOrg in home-features-after slot
- index.md + de/fr/es/it/pl index.md: add translated title to frontmatter
2026-03-07 19:49:24 +03:00
Anton A S
940d0de5b6
Sync docs with v0.7.0 and unreleased features
...
- Update comparison tables: 78 tools (was 75), SVG export no longer a Penpot advantage,
renderer LOC updated to ~3,200 after split into 10 files
- Update figma-comparison: Rename layers ✅ , SVG export ✅ , +Copy/Paste as, +Tailwind export,
+Stroke align, +per-side stroke weights; coverage 88/152 → 94/158
- Add What's Next roadmap to architecture.md: AI providers, figma-use tool set,
CI tooling, prototyping, CSS Grid, PDF export, .fig fidelity
- Update user-guide: SVG in export format table, Copy/Paste as submenu,
stroke align + per-side weights, layer inline rename, mobile drawer, Code tab format toggle
- Fix keyboard shortcuts: ⌘N/⌘T/⌘W ✅ , ⌘\ ✅ , add ⇧⌘C ✅
- Expand MCP tools reference from ~25 to all 78 tools in full category tables
- Add Homebrew tap install to Getting Started
- Add new features.md sections: SVG export, Copy/Paste as, stroke align, mobile/PWA,
Tailwind JSX export, Google Fonts fallback, auto-save toggle, Homebrew tap,
layer rename, renderer profiler
- Full locale sync for DE, ES, FR, IT, PL: all 7 files updated in each locale
2026-03-07 19:25:41 +03:00
Anton A S
e828185d9e
Merge branch 'master' into add-vitepress-docs
2026-03-07 19:01:09 +03:00
Danila Poyarkov
6ec8fc518b
Move demo to /demo route, add @unhead/vue for title management
...
- / shows empty canvas
- /demo loads demo content (for app.openpencil.dev landing link)
- Title template: '{page} — OpenPencil' via useHead
- 'Try it online' links in README and docs point to /demo
2026-03-06 20:54:48 +03:00
Anton A S
8a486d5307
Sync docs with v0.5.0–v0.6.0: full locale translations, 75 tools
...
- Update tool count from 29 to 75 across all docs and locales
- Expand all locale pages (de/es/fr/it/pl) to full translations
- Add missing German sections: Advanced Rendering, Z-Order, ScrubInput,
CI/CD, JSX Renderer, Code Panel, full figma-comparison matrix
- Write complete figma-comparison (152-row matrix) for all locales
- Expand comparison, features, tech-stack, contributing for es/fr/it/pl
- Fix garbled text in locale mcp-tools reference pages
- Architecture diagrams use '75+ tools' to avoid staleness
2026-03-04 18:12:01 +03:00
Anton A S
bb028fb088
Merge remote-tracking branch 'origin/master' into add-vitepress-docs
2026-03-04 17:06:40 +03:00
Danila Poyarkov
698ffe389a
Remove Gatekeeper workaround — app is now code-signed
2026-03-04 01:45:29 +03:00
Danila Poyarkov
3f4169e32d
Add macOS Gatekeeper workaround to README and docs
2026-03-03 21:19:07 +03:00
Peter
31d614a272
fix(mcp): harden HTTP transport defaults ( #26 )
2026-03-03 17:19:08 +03:00
Anton A S
f4cb76b2e2
Translate reference & development pages prose for all locales
2026-03-03 12:57:17 +03:00
Anton A S
8ca1bc790f
Add reference & development pages for all locales, fix nav missing menu items
2026-03-03 12:46:35 +03:00
Anton A S
e97a9283d5
Fix VitePress i18n: per-locale themeConfig with translated nav/sidebar, typed labels
2026-03-03 12:19:27 +03:00
Anton A S
c39e1fd71a
Add i18n docs: German, Italian, French, Spanish, Polish translations (95 pages)
2026-03-03 12:15:39 +03:00
Anton A S
311a0d8208
Merge origin/master: P2P collab, MCP server, multi-file tabs, 29 tools, performance
2026-03-03 11:56:46 +03:00
Danila Poyarkov
f4b45d4f13
Replace "fig-kiwi" format name with "Kiwi binary" in docs
...
fig-kiwi is the magic header string in .fig files, not a format name.
The format is Kiwi binary — used for both .fig files and clipboard.
2026-03-02 15:31:25 +03:00
Danila Poyarkov
75cc653efc
Fix Kiwi format description — same binary format as .fig files, not a clipboard format
2026-03-02 15:28:24 +03:00
Danila Poyarkov
9103d1b554
Highlight copy & paste with Figma in README and docs
2026-03-02 15:26:06 +03:00
Danila Poyarkov
d93bcab0b6
Add install instructions for @open-pencil/mcp
2026-03-02 14:28:56 +03:00
Danila Poyarkov
4ad90d4819
Add MCP server package with stdio and HTTP transports
...
29 tools: open_file, save_file, new_document + all 26 from @open-pencil/core.
Stdio for MCP clients (Claude Code, Cursor), HTTP (Hono + Streamable HTTP
with sessions) for scripts, browser extensions, CI.
Runs on both Bun and Node.js (via tsx).
2026-03-02 14:20:49 +03:00
Danila Poyarkov
eeaef12c27
Update Penpot comparison to reflect WASM renderer (render-wasm/v1)
...
Penpot 2.x ships with Rust/Skia WASM rendering enabled by default.
Update architecture diagram, rendering pipeline, and file format sections
to reflect the current state instead of the old SVG-based renderer.
2026-03-02 13:35:09 +03:00
Danila Poyarkov
d5ca92e01f
Add MIT license
2026-03-02 08:31:54 +03:00
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
e8b685ad0a
Update screenshot
2026-03-01 18:44:52 +03:00
Anton A S
0e8866265d
Sync specs & docs with master: docs→packages/docs, Safari save, .fig export fix, LOC stats
2026-03-01 18:33:36 +03:00
Anton A S
5fa8284766
Merge origin/master
2026-03-01 18:23:32 +03:00
Danila Poyarkov
7a2694b6bc
Emphasize no subscription, bring your own API key
2026-03-01 17:26:30 +03:00
Danila Poyarkov
9f8242bce5
Add download links to README, docs landing, and getting started
2026-03-01 16:32:45 +03:00
Danila Poyarkov
c4e6514ea2
Update repo references to open-pencil/open-pencil
2026-03-01 16:18:11 +03:00
Danila Poyarkov
74d4b6862e
Use app favicon for docs site (symlink to public/favicon-32.png)
2026-03-01 16:14:06 +03:00
Anton A S
c6d70b501b
Sync specs & docs with master: eval command, app menu, autosave, unified tools
2026-03-01 16:07:40 +03:00
Danila Poyarkov
10848d8319
Add app.openpencil.dev links to docs
2026-03-01 16:02:08 +03:00
Danila Poyarkov
0f0ca8db4b
Update screenshot, remove duplicate from repo root
...
Single screenshot lives in packages/docs/public/. README references it
from there. Custom VitePress layout places it between hero and features.
2026-03-01 15:57:01 +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