plume-ui-react
v0.47.0
Published
A lightweight TypeScript React UI component library, themed with CSS variables.
Maintainers
Readme
Plume UI React
A lightweight design system for React. Components ship their own scoped styles and are themed entirely through CSS variables, so they adapt to your brand and switch between light and dark without runtime color math.
- Themeable: every design token is a CSS variable. The stylesheet declares the defaults and
<ThemeProvider>changes the ones your theme overrides. - Light & dark: built in, set with
defaultColorModeand switched withsetColorMode. - Framework-agnostic: use the components as they are, or set
variant="unstyled"and style them with Tailwind or Bootstrap. - Typed: written in TypeScript, with React 18 and 19 support.
Installation
npm install plume-ui-react
# or
pnpm add plume-ui-react
# or
yarn add plume-ui-reactIt includes every component, the theme (ThemeProvider, useTheme, tokens and types), the hooks and the utilities. react and react-dom (>= 18) are peer dependencies.
Usage
Import the stylesheet once and wrap your app in <ThemeProvider>:
import 'plume-ui-react/styles.css'
import { Button, ThemeProvider } from 'plume-ui-react'
export function App() {
return (
<ThemeProvider defaultColorMode="light">
<Button colorScheme="primary" label="Click me" />
</ThemeProvider>
)
}To load only the CSS of some components, import tokens.css once and then the stylesheet of each component (each one brings the CSS of the components it renders):
import 'plume-ui-react/tokens.css'
import 'plume-ui-react/css/button.css'
import 'plume-ui-react/css/input.css'Components
- Accordion
- Alert
- Avatar
- Badge
- Breadcrumb
- Button
- Card
- Carousel
- Checkbox
- Chip
- Collapse
- DatePicker
- Divider
- Drawer
- Dropdown
- EmptyState
- Field
- FileUpload
- Heading
- Icon
- Input
- List
- Modal
- Navbar
- NumberInput
- Paginator
- PinInput
- Popover
- ProgressBar
- Radio
- Rating
- Select
- Sidebar
- Skeleton
- Slider
- Spinner
- Stepper
- Table
- Tabs
- Text
- Textarea
- TimePicker
- Toast
- Toggle
- Tooltip
- Tree
The documentation site has a live playground, props and examples for each one, plus the color palette, design tokens and framework integration guides.
