├── .gitignore
├── assets
└── awesome.png
├── CONTRIBUTE.md
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
--------------------------------------------------------------------------------
/assets/awesome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hevar/awesome-react-headless-ui-components/HEAD/assets/awesome.png
--------------------------------------------------------------------------------
/CONTRIBUTE.md:
--------------------------------------------------------------------------------
1 | ## How to contribute
2 |
3 | 1. copy the template below
4 | 2. replace all `REPLACE_WITH_...` placeholders with the actual values
5 |
6 |
7 |
8 |
9 | **Checklist for replacing placeholders:**
10 |
11 | - Replace `REPLACE_WITH_LIB_URL` with library main url. Example: `https://ariakit.org`
12 | - Replace `REPLACE_WITH_LIB_NAME` with library name. Example: `AriaKit`
13 | - Replace `REPLACE_WITH_LIB_DESCRIPTION` with library description. Example: `AriaKit is a collection of accessible React components...`
14 | - Replace `REPLACE_WITH_LIB_GH_USER` with library github user (`github.com/`). Example: `ariakit`
15 | - Replace `REPLACE_WITH_LIB_GH_REPO_NAME` with library github repo name (`github.com//`). Example: `ariakit`
16 | - Replace `REPLACE_WITH_LIB_GH_REPO_URL` with library github repo url. Example: `https://github.com/ariakit/ariakit
17 | - Replace `REPLACE_WITH_NPM_PACKAGE_NAME` with library npm package name (same as used to install, `npm install @ariakit/react`). Example: `%40ariakit%2Freact` (`@ariakit/react` URL encoded)
18 |
19 | ---
20 |
21 |
22 | ## Templates
23 |
24 | ### Compact template:
25 |
26 | REPLACE_WITH_LIB_NAME - REPLACE_WITH_LIB_DESCRIPTION
27 |
28 | [](REPLACE_WITH_LIB_GH_REPO_URL)
29 |
30 |
31 |
32 | ### With Stats template:
33 |
34 | REPLACE_WITH_LIB_NAME - REPLACE_WITH_LIB_DESCRIPTION
35 |
36 | [](REPLACE_WITH_LIB_GH_REPO_URL)
37 |
38 |
39 |
40 |

41 |

42 |

43 |

44 |

45 |

46 |

47 |

48 |

49 |

50 |

51 |

52 |
53 |
54 | ---
55 |
56 | ## Notes:
57 | **Shields.io badges docs:**
58 | - github stars - https://shields.io/badges/git-hub-repo-stars
59 | - commit activity - https://shields.io/badges/git-hub-commit-activity
60 | - created at - https://shields.io/badges/github-created-at
61 | - npm downloads - https://shields.io/badges/npm-downloads
62 | - npm bundle size - https://shields.io/badges/npm-bundle-size
63 | - github discussions - https://shields.io/badges/git-hub-discussions
64 | - github issues - https://shields.io/badges/git-hub-issues-or-pull-requests
65 | - npm version https://shields.io/badges/npm-version
66 | - language - https://shields.io/badges/git-hub-top-language
67 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | # Awesome React Headless UI Components
7 | Awesome list of React headless user interface component libraries!
8 |
9 | ---
10 |
11 | Ariakit - Open-source library with unstyled, primitive components, with a collection of styled examples that you can copy and paste into your apps.
12 |
13 | [](https://github.com/ariakit/ariakit)
14 |
15 |
16 |
17 | Aui UI - Ark UI is a headless library for building reusable, scalable Design Systems that works for a wide range of JS frameworks.
18 |
19 | [](https://github.com/chakra-ui/ark)
20 |
21 |
22 |
23 |
24 | Base UI - Base UI is a library of headless ("unstyled") React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.
25 |
26 | [](https://github.com/mui/base-ui)
27 |
28 |
29 |
30 | Floating UI - Floating UI is a library that helps you create “floating” elements such as tooltips, popovers, dropdowns, and more.
31 |
32 | [](https://github.com/floating-ui/floating-ui)
33 |
34 |
35 |
36 | Headless UI - Completely unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.
37 |
38 | [](https://github.com/tailwindlabs/headlessui)
39 |
40 |
41 |
42 | Radix UI - Core building blocks for your design system - Unstyled, accessible, open source React primitives for high-quality web apps and design systems.
43 |
44 | [](https://github.com/radix-ui/primitives)
45 |
46 | > [!NOTE]
47 | > Radix UI is divided into multiple packages, each with its own repository. The above NPM badges is for the `@radix-ui/react-accordion` package only.
48 |
49 |
50 |
51 |
52 | React Aria - Craft world-class accessible components with custom styles. Over 40 components with built-in behavior, adaptive interactions, top-tier accessibility, and internationalization out of the box, ready for your styles.
53 |
54 | [](https://github.com/adobe/react-spectrum)
55 |
56 |
57 | ---
58 |
59 | # With stats
60 |
61 |
62 | Ariakit - Open-source library with unstyled, primitive components, with a collection of styled examples that you can copy and paste into your apps.
63 |
64 | [](https://github.com/ariakit/ariakit)
65 |
66 |
67 |
68 |

69 |

70 |

71 |

72 |

73 |

74 |

75 |

76 |

77 |

78 |

79 |

80 |
81 |
82 | ---
83 |
84 |
85 | Ark UI - Ark UI is a headless library for building reusable, scalable Design Systems that works for a wide range of JS frameworks.
86 |
87 | [](https://github.com/chakra-ui/ark)
88 |
89 |
90 |
91 |

92 |

93 |

94 |

95 |

96 |

97 |

98 |

99 |

100 |

101 |

102 |

103 |
104 |
105 | ---
106 |
107 |
108 | Base UI - Base UI is a library of headless ("unstyled") React components and low-level hooks. You gain complete control over your app's CSS and accessibility features.
109 |
110 | [](https://github.com/mui/base-ui)
111 |
112 |
113 |
114 |

115 |

116 |

117 |

118 |

119 |

120 |

121 |

122 |

123 |

124 |

125 |

126 |
127 |
128 | ---
129 |
130 |
131 | Floating UI - Floating UI is a library that helps you create “floating” elements such as tooltips, popovers, dropdowns, and more.
132 |
133 | [](https://github.com/floating-ui/floating-ui)
134 |
135 |
136 |
137 |

138 |

139 |

140 |

141 |

142 |

143 |

144 |

145 |

146 |

147 |

148 |

149 |
150 |
151 | ---
152 |
153 |
154 | Headless UI - Completely unstyled, fully accessible UI components, designed to integrate beautifully with Tailwind CSS.
155 |
156 | [](https://github.com/tailwindlabs/headlessui)
157 |
158 |
159 |
160 |

161 |

162 |

163 |

164 |

165 |

166 |

167 |

168 |

169 |

170 |

171 |

172 |
173 |
174 | ---
175 |
176 |
177 | Radix UI - Core building blocks for your design system - Unstyled, accessible, open source React primitives for high-quality web apps and design systems.
178 |
179 | [](https://github.com/radix-ui/primitives)
180 |
181 |
182 |
183 |

184 |

185 |

186 |

187 |

188 |

189 |

190 |

191 |

192 |

193 |

194 |

195 |
196 |
197 | > [!NOTE]
198 | > Radix UI is divided into multiple packages, each with its own repository. The above NPM badges is for the `@radix-ui/react-accordion` package only.
199 |
200 | ---
201 |
202 |
203 | React Aria - Craft world-class accessible components with custom styles. Over 40 components with built-in behavior, adaptive interactions, top-tier accessibility, and internationalization out of the box, ready for your styles.
204 |
205 | [](https://github.com/adobe/react-spectrum)
206 |
207 |
208 |
209 |

210 |

211 |

212 |

213 |

214 |

215 |

216 |

217 |

218 |

219 |

220 |

221 |
222 |
223 | ---
224 |
225 | # Stats Comparison
226 |
227 | | Library | GitHub Stars | NPM Downloads (Monthly/Yearly) | GitHub Issues | GitHub Discussions |
228 | |-------------|--------------|-------------------------------|---------------|--------------------|
229 | | **Ariakit** |  |   |  |  |
230 | | **Ark UI** |  |   |  |  |
231 | | **Base UI** |  |   |  |  |
232 | | **Floating UI** |  |   |  |  |
233 | | **Headless UI** |  |   |  |  |
234 | | **Radix UI** |  |   |  |  |
235 | | **React Aria** |  |   |  |  |
236 |
--------------------------------------------------------------------------------