Components
How components are organized in StrataKit
The StrataKit component catalog comes in three tiers:
- Generic components are taken from the third-party Material UI (MUI) library.
- Specialized components are developed separately in
@stratakitpackages. - Composite components build upon other types of components and are distributed as examples.
See Develop with StrataKit for detailed installation instructions.
MUI components
Section titled āMUI componentsāBy making an established open-source library responsible for generic components, we are free to focus efforts on developing components that solve more complex and specific tasks.
StrataKitās MUI theme ensures consistency across all components, incorporating StrataKitās design tokens and iconography.
The theme includes the following modifications:
- Styling: The style has been aligned with StrataKitās visual language.
- Typography: StrataKitās principle font is Inter, which needs to be self-hosted.
- Icons: Component icons are taken exclusively from StrataKitās own icon collection.
- API: Some props have been adjusted or removed, and some new props have been added.
- Structure and behavior: The markup structure and interaction behavior of certain components have been modified to meet StrataKit UX and accessibility requirements.
StrataKit components
Section titled āStrataKit componentsāAccompanying specialized components are available in separate packages, such as @stratakit/structures.
These components are developed independently, to meet the interface requirements of construction and infrastructure design software.
Composite components
Section titled āComposite componentsāComposite components combine other components to enable more specific interactions. They may be built using any combination of MUI components, StrataKit components, or third-party libraries.
These components are not exported directly, and instead distributed primarily through example code snippets. The underlying APIs used will be listed under the āAPI referenceā subheading.
Component guidance
Section titled āComponent guidanceāAll components are accompanied by implementation guidance. This adheres to the following structure:
- Demo: What does a typical implementation look like, using common settings?
- Use cases: Is this, or another, component right for my use case? (compares similar components in a table)
- StrataKit MUI modifications: (where applicable): What has been done to bring the MUI component in line with StrataKit?
- Examples: What variants are there, and to which contexts are they suited?
- ā Do: Whatās needed for an efficient and accessible implementation? What opportunities are there to improve user experience?
- š« Donāt: What are some common pitfalls? What are the bad practices to avoid?
- API reference: Links to the technical documentation for each API that this component exposes or uses.
Component status
Section titled āComponent statusāCheck the status before choosing to use a component in your product. You may be unwilling to undertake certain risks and uncertainties. You can find the status in the metadata at the top of each componentās guidance page. It will have one of the following values:
- Unstable: The component is available for consumption but is not comprehensively tested and may undergo breaking changes. As an early adopter, please provide feedback.
- Stable: The component is established and meets our compatibility and accessibility standards.
- Deprecated: The component is no longer recommended or supported. You should remove or replace it at your earliest convenience.