diff --git a/ARCHITECTURE-NEXT.md b/ARCHITECTURE-NEXT.md new file mode 100644 index 000000000..362f68f9c --- /dev/null +++ b/ARCHITECTURE-NEXT.md @@ -0,0 +1,647 @@ +# OpenPencil Next: Browser-Native Design Tool + +## Vision + +A design tool where every element is real HTML/CSS rendered by a real browser engine. +Not a Figma clone. Not a browser wrapper. A new kind of application built from +WebKit's rendering primitives. + +## Core Concept: Islands + +An **island** is an independent rendering context — its own DOM, styles, layout, +and paint output. Components within an island share CSS context, compose via +Shadow DOM, and have real parent-child relationships. Components on the infinite +canvas that aren't composed together live in separate islands. + +``` +Infinite canvas +│ +├── Island A ─ one Document, one render surface +│ └── +│ ├── +│ └── +│ +├── Island B ─ separate Document, separate surface +│ └── +│ ├── +│ └── +│ +├── Island C ─ standalone component +│ └── (same component class, isolated context) +│ +├── Island D ─ full page composition +│ └── +│ ├── (shares CSS with siblings here) +│ ├── +│ └──