@uvisoft/dev-ui
v2.6.1
Published
Accessible, production-ready React components for building consistent application UIs.
Readme
@uvisoft/dev-ui
Accessible, production-ready React components for building consistent application UIs.
Install
npm install @uvisoft/dev-uiPeer dependencies:
- React 19+
- React DOM 19+
Quick Start
Import the package stylesheet once (usually in your app entry file), then use components.
import "@uvisoft/dev-ui/style.css";
import { Button, ThemeProvider, lightTheme } from "@uvisoft/dev-ui";
export function App() {
return (
<ThemeProvider defaultTheme={lightTheme}>
<Button palette="primary" variant="solid">Save changes</Button>
</ThemeProvider>
);
}Common Components
This package exports a broad set of UI primitives and composed components, including:
- Actions and inputs:
Button,Checkbox,TextInput,TextArea,NumberInput,SelectInput,ToggleSwitch,Slider - Layout and content:
Flex,Grid,Card,Divider,Heading,Text,Image,Link - Overlay and navigation:
Dropdown,Menu,Modal,Sidebar,Toast - Data and collections:
Table,ListBox,Calendar,DateInput,DateInputField,Virtualizer
Theming
Built-in themes are exported and can be used with ThemeProvider:
lightThemedarkThemedefaultTheme
You can also read/update theme state with useTheme.
Toasts
Use ToastProvider with a queue created by toastQueueFactory.
import { ToastProvider, toastQueueFactory } from "@uvisoft/dev-ui";
const queue = toastQueueFactory({ maxVisibleToasts: 3 });
export function AppToasts() {
return <ToastProvider queue={queue} position="top" />;
}Use your queue instance from anywhere in your app to enqueue messages.
Utilities and Hooks
The package also exports:
- Runtime styling helper:
css - Collection helpers:
createItemCollectionComponent,createSectionCollectionComponent - Hooks:
useAsyncPress,useRipple,useToggleRtl
Documentation
Full component docs and examples:
- https://docs.uvisoft.com/
