vork by Voyager
An agent writes a scene as code, renders it on the GPU, looks at the result and revises the code. Source-available and free during the research preview.
翻訳待ち
SSA Group offers the best React JS dashboard templates and admin UI kits. Quickly create responsive and customizable dashboards with our React solutions. Start now!
翻訳待ち
デザインTypeScript · MDXGitHub @ssagroup接続状況の再確認が必要です所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
SSA UI kit is an open-source React library offering AI-friendly components to streamline the creation of dashboards and admin panels.
翻訳待ち
Loading the full README.
Read the full README ↗SSA UI kit is an open-source React-based library combining multiple UI Components, Widgets, Blocks, and Forms classified by application area and implemented following Atomic design principles.
SSA UI kit includes Figma design, integration with Firebase and examples of implementation for different business domains.
SSA UI kit was founded and is supported by SSA Group. The SSA UI kit source code is available under the MIT License.
We regularly post updates, new components, and improvements for the SSA UI kit on our blog: https://www.ssa.group/blog/ssa-ui-kit/ Please feel free to follow along.
SSA UI kit components are designed with the following principles:
Form Controls: Most form inputs integrate with React Hook Form. Use register prop for uncontrolled inputs, or value/onChange for controlled patterns.
Compound Components: Many components like Table, Modal, Field, and Dropdown use compound component patterns for flexible composition.
Status Props: Components use consistent prop naming like status (for validation states), disabled (for disabled state), and variant (for visual variants).
Controlled & Uncontrolled: Form controls follow the React convention —
checked/defaultChecked for booleans, value/defaultValue for everything
else.
Prop renames (v3.20). The library is converging on the names the DOM, MUI, Radix and Ant use. Each old prop still works and warns once per component in development; all are removed at the next major.
Old New Components isDisableddisabled15 components isCheckedcheckedRadioinitialStatedefaultCheckedCheckboxexternalStatecheckedCheckboxexternalState,selectedItemvalueRadioGroup,ButtonGroupselectedItems/defaultSelectedItemsvalue/defaultValueTypeaheadcolor/defaultColorvalue/defaultValueColorPickerariaLabelaria-labelBreadcrumbs,PaginationariaLabelledbyaria-labelledbyCardContent,DropdownOptions,MultipleDropdownOptions,DropdownToggleariaControlsaria-controlsAccordion,Tab,LargeTab,DropdownToggleopened/defaultOpenedopen/defaultOpenDrawer,useDraweropened/defaultOpened/onOpenedChangeopen/defaultOpen/onOpenChange
Get started in 60 seconds. Here's a complete example showing Card, Button, Input, and Table working together:
This is the beginning of the README. Read the rest at the original. Read the full README ↗
useFilterMultiSelect |
initialOpen | defaultOpen | Popover, usePopover |
isOpen | open | Modal, ModalDialog |
isOpen | defaultOpen | Tooltip, useTooltip |
isOpened | open / defaultOpen | Accordion, AccordionContent |
Open state now follows one shape everywhere: open (controlled),
defaultOpen (uncontrolled seed) and onOpenChange (notification).
onOpenChange is new on Modal, Tooltip and Accordion, which previously
had no way to tell a parent they had opened or closed.
Run node scripts/codemods/prop-renames.mjs src to rename call sites
automatically (--dry to preview). It rewrites JSX attributes, kit hook
options (useDrawer({ defaultOpened })) and recognised item-object keys —
only where the tag or callee resolves, in that file, to an import from
@ssa-ui-kit/*, including aliased (Button as KitButton), qualified
(Drawer.Root) and namespaced (Kit.Button) imports. Components of the same
name from elsewhere are left alone, which matters because Chakra UI uses
isDisabled as its own real API on Button, Checkbox, Radio and
Switch.
⚠ Two groups are not pure renames, and the codemod flags every such site.
externalState / selectedItem / Modal.isOpen → checked / value /
open: the old props are synced into internal state, so the control still
moves on click even when the parent ignores the change callback; the
replacements are fully controlled. Confirm the parent writes the value back
— if it does not, use defaultChecked / defaultValue / defaultOpen.Tooltip.isOpen and Accordion.isOpened → defaultOpen: these read as
controlled but only ever seeded the initial state, so a changing value did
nothing. defaultOpen preserves that exactly; if you meant to control the
component, move to open + onOpenChange.