Skip to content

A progressive, atomic, highly reusable, flexible and configurable headless UI component library for ReactJS

License

Notifications You must be signed in to change notification settings

Adebisi1234/react-busser-headless-ui

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

code style: prettier PRs Welcome

react-busser-headless-ui (WIP)

A progressive, atomic, highly reusable, flexible and configurable headless UI component library for ReactJS.

HIGHLIGHTS

  • Ships with zero styles (Paint on a blank canvas - no colors, background-colors or shadows except the ones you define)
  • Uses modern HTML tags for component structure where necessary (e.g. details, summary, dialog and menu)
  • Minimizes the use of useState() especially for things CSS can already handle. (e.g. toggling the visibility of a DOM node or capturing invalid state)
  • Reduces boilerplate associated with setting up a component especially around structure, testability and reusability.
  • makes use of the very best third-party libraries to handle forms, toasts, utilities and state management (i.e. react-hook-form, react-busser, react-day-picker, react-dropzone & sonner

components-init component-next-init component-showcase component-next-showcase component-last-showcase

Preamble

There are lots of headdless UI libraries out there (e.g. Material UI, Radix UI e.t.c). While many of these UI libraries give you the flexibility and atomicity to build what you want in a fairly easy manner, they don't give you a lot of options for configuration. Sometimes, all you have a set of strict primitives or bloated themeing configurations. Furthermore, useState() is over used for things that CSS can do already. react-busser-headless-ui steps into these gaps with superior rendering performance and optimized state management.

One of the reasons i started this project is that i kept waiting for Radix UI to support DatePicker primitives but till date it doesn't.

About

A progressive, atomic, highly reusable, flexible and configurable headless UI component library for ReactJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 99.4%
  • JavaScript 0.6%