Optional reusable React presentation components for product UI. It is not part of the Core execution kernel.
Owns
- public React components such as
Text,Icon,IconButton,ContextMenu,Button,Input,ColorPicker, andPropertyControl - accessible reusable presentation behavior within those components
- canonical icon names and the package stylesheet
Does not own
Core, transactions, canonical documents, app command policy, canvas rendering, selection, input normalization, persistence, Collaboration, or app-specific panel decisions.
Compose when
Compose it when a React app wants Asyra's maintained UI pieces. Do not compose it merely because the app uses Core; Framework packages do not require this UI library. A custom app can use another design system without changing canonical Asyra behavior.
Public entrypoints and prerequisites
@asyra/design-systemfor components, props, types, and helpers@asyra/design-system/index.cssfor package styles
Use a React host and import the stylesheet once at the app boundary. The app supplies accessible labels, command handlers, item eligibility, session state, and canonical write routes.
Lifecycle, inputs, outputs, and failure
Components receive ordinary React props and emit UI intent callbacks. They may own temporary focus, measurement, dismissal, and portal cleanup, but no canonical state. Invalid app policy or mutation failure remains with the app handler; a component must not fabricate successful document output.
Relationships
Asyra Design composes this package for its interface. UI Context may provide derived values to app controls, while Features/common APIs own commands and canonical updates. Utils supplies shared low-level types; there is no Core dependency.
Maintained use path
Create a ready-to-use design-tool product with `create-asyra-design-app` and inspect its component composition. The verified generated-app extension demonstrates that new app behavior can be registered without changing the Design System.
Replacement and disabled behavior
Every component can be replaced at the app boundary. Omitting the package and stylesheet has no effect on Core, Preset capability registration, canonical state, rendering, or transactions. Do not copy app command policy into a replacement component.
Support, migration, and deprecation
The current package is a React UI library. Component props and icon-name contracts are public; visual styling may evolve within semver. App migration must preserve accessible semantics and event routing. No Design System API is a canonical Framework mutation API.
Canonical sources and release inventory
Version, . and ./index.css entrypoints are generated from the manifest. The documentation gate checks this guide against the release inventory.