@@ -24,11 +24,20 @@ You manage a strict PNPM Workspace.
2424| ---| ---| ---| ---|
2525| @object-ui/types | The Protocol | Pure JSON Interfaces (ComponentSchema, ActionSchema). | ZERO dependencies. No React code. |
2626| @object-ui/core | The Engine | Schema Registry, Validation, Expression Evaluation (visible: "${data.age > 18}"). | No UI library dependencies. Logic Only. |
27- | @object-ui/components | The UI Kit | Shadcn implementation of the Schema. | Stateless. Controlled by props only. |
27+ | @object-ui/components | The Atoms | Shadcn Primitives (Button, Badge, Card) & Icons. | Pure UI. No business logic. |
28+ | @object-ui/fields | The Inputs | Standard Field Renderers (Text, Number, Select). | Must implement FieldWidgetProps. |
29+ | @object-ui/layout | The Shell | Page Structure (Header, Sidebar, AppShell). | Routing-aware composition. |
30+ | @object-ui/plugin- * | The Widgets | Complex Views (Grid, Kanban, Map, Charts). | Heavy dependencies allowed here only. |
2831| @object-ui/react | The Runtime | <SchemaRenderer >, useRenderer, useDataScope. | Bridges Core and Components. |
29- | @object-ui/fields | The Registry | Standard Field Renderers & Registry. | Centralizes all field logic. |
30- | @object-ui/layout | The Structure | Grid, Stack, Card, Dialog containers. | Handles responsiveness. |
3132| @object-ui/data- * | The Adapters | Connectors for REST, ObjectQL, GraphQL. | Isolate ALL fetch logic. |
33+
34+ ### 0. Architectural Strategy (Strict)
35+ ** ❌ Do NOT create a package for every component.**
36+ ** ✅ Group by Dependency Weight:**
37+ 1 . ** Atoms (@object-ui/components ):** Shadcn Primitives. Zero heavy 3rd-party deps.
38+ 2 . ** Fields (@object-ui/fields ):** Standard Inputs.
39+ 3 . ** Layouts (@object-ui/layout ):** Page Skeletons.
40+ 4 . ** Plugins (@object-ui/plugin- * ):** Heavy Widgets (>50KB) or specialized libraries (Maps, Editors, Charts).
32414 . The JSON Protocol Specification (The "DNA")
3342You must enforce a strict JSON structure. Every node in the UI tree follows this shape:
3443// @object-ui/types
0 commit comments