# NODE.DC Design System rules This repository is the canonical home of reusable NODE.DC interface foundations and components. Before adding UI to a NODE.DC application: 1. Read `registry/registry.json` and `docs/COMPONENTS.md`. 2. Reuse an existing package export if the required primitive or pattern already exists. 3. If a reusable capability is missing, add it here first and consume a released version from the application. 4. Do not copy component source into an application. Temporary adapters must stay thin and be documented in `docs/ADOPTION.md`. 5. Application-specific domain UI remains in the application, but its controls and surfaces must be composed from this system. Canonical source limits: - Launcher/Hub, CMS and SEO are the reference product family for application shell, headers, windows and common controls. - From Engine, only the redesigned environment settings, shared glass controls and NDC agent inspector are approved reference sources. - Legacy Engine inspectors and legacy Engine plates are explicitly non-canonical. - Task Manager contributes only already-standardized shared behavior and components. Its legacy local menus are non-canonical. - BIM Viewer contributes validated non-React integration requirements. Every component change must update its registry entry and the living catalog. Preserve keyboard behavior, portal layering and theme independence.