RizzUI 1.0.0
In this ever-evolving landscape of web development, creating modern, accessible, and responsive user interfaces has become more critical than ever. To meet these demands, we are thrilled to introduce RizzUI, a next-generation React UI library that offers limitless customization options, unparalleled ease of use, and robust type safety.
RizzUI 1.0.0 brings core upgrades, new APIs, and improvements to the developer experience. Key updates include:
- React 19 support
- Versioned doc
- Tree shaking
- Client components
- Server components
- Integrated Components
- Select search field sticky
- MultiSelect search field sticky
React 19 Support
RizzUI now supports React 19. You can now use the latest version of React with RizzUI.
Versioned Doc
We have introduced versioned documentation for RizzUI. You can now switch between different versions of the documentation to view the changes and updates made in each version.
Tree Shaking
RizzUI now supports tree shaking. You can now import components individually or in bulk.
Client Components
Whenever you are importing these components you have to use "use client"
as a prefix. Because of the use cases of these components they are mostly used in the client side.
"use client";
import { Input } from "rizzui/input";
export default App () {
return (
<Input label="Input" />
);
}
List of client components
Components that are not listed here can be used in server components.
"use client"; // prefix is required for all client components
import { Input } from "rizzui/input";
import { Password } from "rizzui/password";
import { Textarea } from "rizzui/textarea";
import { CheckboxGroup } from "rizzui/checkbox-group";
import { RadioGroup } from "rizzui/radio-group";
import { Select } from "rizzui/select";
import { MultiSelect } from "rizzui/multi-select";
import { PinCode } from "rizzui/pin-code";
import { NumberInput } from "rizzui/number-input";
import { Dropdown } from "rizzui/dropdown";
import { Tabs } from "rizzui/tabs";
import { Stepper } from "rizzui/stepper";
import { Tooltip } from "rizzui/tooltip";
import { Popover } from "rizzui/popover";
import { Modal } from "rizzui/modal";
import { Drawer } from "rizzui/drawer";
import { Accordion } from "rizzui/accordion";
import { FileInput } from 'rizzui/upload';
import { RadialProgressBar } from 'rizzui/radial-progressbar';
import { Avatar } from "rizzui/avatar";
Server Components
Components that supports server side rendering. Whenever you are importing these components you don't need to use "use client"
as a prefix. But if you are using events like onClick, onChange etc. you have to use "use client"
as a prefix.
import { Button } from "rizzui/button";
export default App () {
return (
<Button>Click Me</Button>
);
}
Example: if you are using events
"use client";
import { Button } from "rizzui/button";
export default App () {
return (
<Button onClick={() => console.log('clicked')}>Click Me</Button>
);
}
Integrated Components
These components are categorized as integration components due to their varied use cases. To use them, simply copy and paste the code from the documentation into your project. You can customize them to fit your requirements. By default, if you copy the code from the documentation, they will support our design system.
List of integration components
Select Search Field Sticky
The search field in the Select component is now can be sticky. When you scroll down the list of options, the search field will remain visible at the top of the dropdown.
Example:
"use client";
import { Select } from "rizzui/select";
export default App () {
return (
<Select label="Select" options={options} stickySearch={true} />
);
}
MultiSelect Search Field Sticky
The search field in the MultiSelect component is now can be sticky. When you scroll down the list of options, the search field will remain visible at the top of the dropdown.
Example:
"use client";
import { MultiSelect } from "rizzui/multi-select";
export default App () {
return (
<MultiSelect label="MultiSelect" options={options} stickySearch={true} />
);
}