react-shadcn-kit 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/README.md +59 -75
  2. package/dist/assets/global.css +1 -1
  3. package/dist/components/composites/action-button.d.ts +16 -0
  4. package/dist/components/composites/action-button.js +71 -0
  5. package/dist/components/composites/action-button.js.map +1 -0
  6. package/dist/components/composites/index.d.ts +8 -0
  7. package/dist/components/composites/sidebar-wrapper.d.ts +27 -0
  8. package/dist/components/composites/sidebar-wrapper.js +21 -0
  9. package/dist/components/composites/sidebar-wrapper.js.map +1 -0
  10. package/dist/{molecules → components/composites}/theme-toggle.js +3 -3
  11. package/dist/components/composites/theme-toggle.js.map +1 -0
  12. package/dist/{molecules → components/composites}/user-menu.js +4 -4
  13. package/dist/components/composites/user-menu.js.map +1 -0
  14. package/dist/components/marketing/hero.d.ts +12 -0
  15. package/dist/components/marketing/hero.js +87 -0
  16. package/dist/components/marketing/hero.js.map +1 -0
  17. package/dist/components/marketing/index.d.ts +6 -0
  18. package/dist/components/marketing/social-proof.d.ts +10 -0
  19. package/dist/components/marketing/social-proof.js +21 -0
  20. package/dist/components/marketing/social-proof.js.map +1 -0
  21. package/dist/components/marketing/value-props.d.ts +14 -0
  22. package/dist/components/marketing/value-props.js +25 -0
  23. package/dist/components/marketing/value-props.js.map +1 -0
  24. package/dist/{atoms → components/primitives}/accordion.js +1 -1
  25. package/dist/components/primitives/accordion.js.map +1 -0
  26. package/dist/{atoms → components/primitives}/alert-dialog.js +2 -2
  27. package/dist/components/primitives/alert-dialog.js.map +1 -0
  28. package/dist/{atoms → components/primitives}/alert.js +1 -1
  29. package/dist/components/primitives/alert.js.map +1 -0
  30. package/dist/components/primitives/aspect-ratio.js.map +1 -0
  31. package/dist/{atoms → components/primitives}/avatar.js +1 -1
  32. package/dist/components/primitives/avatar.js.map +1 -0
  33. package/dist/components/primitives/badge-variants.d.ts +3 -0
  34. package/dist/{atoms/badge.js → components/primitives/badge-variants.js} +7 -19
  35. package/dist/components/primitives/badge-variants.js.map +1 -0
  36. package/dist/components/primitives/badge.d.ts +9 -0
  37. package/dist/components/primitives/badge.js +21 -0
  38. package/dist/components/primitives/badge.js.map +1 -0
  39. package/dist/{atoms → components/primitives}/breadcrumb.js +1 -1
  40. package/dist/components/primitives/breadcrumb.js.map +1 -0
  41. package/dist/components/primitives/button-group-variants.d.ts +3 -0
  42. package/dist/components/primitives/button-group-variants.js +19 -0
  43. package/dist/components/primitives/button-group-variants.js.map +1 -0
  44. package/dist/components/primitives/button-group.d.ts +13 -0
  45. package/dist/components/primitives/button-group.js +52 -0
  46. package/dist/components/primitives/button-group.js.map +1 -0
  47. package/dist/components/primitives/button-variants.d.ts +4 -0
  48. package/dist/{atoms/button.js → components/primitives/button-variants.js} +8 -28
  49. package/dist/components/primitives/button-variants.js.map +1 -0
  50. package/dist/components/primitives/button.d.ts +9 -0
  51. package/dist/components/primitives/button.js +21 -0
  52. package/dist/components/primitives/button.js.map +1 -0
  53. package/dist/{atoms → components/primitives}/calendar.d.ts +1 -1
  54. package/dist/{atoms → components/primitives}/calendar.js +5 -4
  55. package/dist/components/primitives/calendar.js.map +1 -0
  56. package/dist/{atoms → components/primitives}/card.js +1 -1
  57. package/dist/components/primitives/card.js.map +1 -0
  58. package/dist/{atoms → components/primitives}/carousel.d.ts +1 -1
  59. package/dist/{atoms → components/primitives}/carousel.js +1 -1
  60. package/dist/components/primitives/carousel.js.map +1 -0
  61. package/dist/{atoms → components/primitives}/chart.js +1 -1
  62. package/dist/components/primitives/chart.js.map +1 -0
  63. package/dist/{atoms → components/primitives}/checkbox.js +1 -1
  64. package/dist/components/primitives/checkbox.js.map +1 -0
  65. package/dist/components/primitives/collapsible.js.map +1 -0
  66. package/dist/{atoms → components/primitives}/command.d.ts +1 -1
  67. package/dist/{atoms → components/primitives}/command.js +1 -1
  68. package/dist/components/primitives/command.js.map +1 -0
  69. package/dist/{atoms → components/primitives}/context-menu.js +1 -1
  70. package/dist/components/primitives/context-menu.js.map +1 -0
  71. package/dist/components/primitives/custom-button-variants.d.ts +5 -0
  72. package/dist/components/primitives/custom-button-variants.js +38 -0
  73. package/dist/components/primitives/custom-button-variants.js.map +1 -0
  74. package/dist/components/primitives/custom-button.d.ts +22 -0
  75. package/dist/components/primitives/custom-button.js +64 -0
  76. package/dist/components/primitives/custom-button.js.map +1 -0
  77. package/dist/{atoms → components/primitives}/dialog.js +8 -8
  78. package/dist/components/primitives/dialog.js.map +1 -0
  79. package/dist/{atoms → components/primitives}/drawer.js +1 -1
  80. package/dist/components/primitives/drawer.js.map +1 -0
  81. package/dist/{atoms → components/primitives}/dropdown-menu.js +1 -1
  82. package/dist/components/primitives/dropdown-menu.js.map +1 -0
  83. package/dist/{atoms → components/primitives}/empty.js +1 -1
  84. package/dist/components/primitives/empty.js.map +1 -0
  85. package/dist/{atoms → components/primitives}/field.d.ts +1 -1
  86. package/dist/{atoms → components/primitives}/field.js +1 -1
  87. package/dist/components/primitives/field.js.map +1 -0
  88. package/dist/components/primitives/form-context.d.ts +23 -0
  89. package/dist/components/primitives/form-context.js +26 -0
  90. package/dist/components/primitives/form-context.js.map +1 -0
  91. package/dist/components/primitives/form.d.ts +11 -0
  92. package/dist/components/primitives/form.js +85 -0
  93. package/dist/components/primitives/form.js.map +1 -0
  94. package/dist/{atoms → components/primitives}/hover-card.js +1 -1
  95. package/dist/components/primitives/hover-card.js.map +1 -0
  96. package/dist/components/primitives/index.d.ts +116 -0
  97. package/dist/{atoms → components/primitives}/input-group.d.ts +2 -2
  98. package/dist/{atoms → components/primitives}/input-group.js +1 -1
  99. package/dist/components/primitives/input-group.js.map +1 -0
  100. package/dist/{atoms → components/primitives}/input-otp.js +1 -1
  101. package/dist/components/primitives/input-otp.js.map +1 -0
  102. package/dist/{atoms → components/primitives}/input.js +1 -1
  103. package/dist/components/primitives/input.js.map +1 -0
  104. package/dist/{atoms → components/primitives}/item.d.ts +2 -2
  105. package/dist/{atoms → components/primitives}/item.js +1 -1
  106. package/dist/components/primitives/item.js.map +1 -0
  107. package/dist/{atoms → components/primitives}/kbd.js +1 -1
  108. package/dist/components/primitives/kbd.js.map +1 -0
  109. package/dist/{atoms → components/primitives}/label.js +1 -1
  110. package/dist/components/primitives/label.js.map +1 -0
  111. package/dist/components/primitives/loading-swap.d.ts +8 -0
  112. package/dist/components/primitives/loading-swap.js +25 -0
  113. package/dist/components/primitives/loading-swap.js.map +1 -0
  114. package/dist/{atoms → components/primitives}/menubar.js +1 -1
  115. package/dist/components/primitives/menubar.js.map +1 -0
  116. package/dist/components/primitives/navigation-menu-variants.d.ts +1 -0
  117. package/dist/components/primitives/navigation-menu-variants.js +8 -0
  118. package/dist/components/primitives/navigation-menu-variants.js.map +1 -0
  119. package/dist/components/primitives/navigation-menu.d.ts +13 -0
  120. package/dist/components/primitives/navigation-menu.js +102 -0
  121. package/dist/components/primitives/navigation-menu.js.map +1 -0
  122. package/dist/{atoms → components/primitives}/pagination.d.ts +1 -1
  123. package/dist/{atoms → components/primitives}/pagination.js +2 -2
  124. package/dist/components/primitives/pagination.js.map +1 -0
  125. package/dist/{atoms → components/primitives}/popover.js +1 -1
  126. package/dist/components/primitives/popover.js.map +1 -0
  127. package/dist/{atoms → components/primitives}/progress.js +1 -1
  128. package/dist/components/primitives/progress.js.map +1 -0
  129. package/dist/{atoms → components/primitives}/radio-group.js +1 -1
  130. package/dist/components/primitives/radio-group.js.map +1 -0
  131. package/dist/{atoms → components/primitives}/resizable.js +1 -1
  132. package/dist/components/primitives/resizable.js.map +1 -0
  133. package/dist/{atoms → components/primitives}/scroll-area.js +1 -1
  134. package/dist/components/primitives/scroll-area.js.map +1 -0
  135. package/dist/{atoms → components/primitives}/select.js +1 -1
  136. package/dist/components/primitives/select.js.map +1 -0
  137. package/dist/{atoms → components/primitives}/separator.js +1 -1
  138. package/dist/components/primitives/separator.js.map +1 -0
  139. package/dist/{atoms → components/primitives}/sheet.js +5 -5
  140. package/dist/components/primitives/sheet.js.map +1 -0
  141. package/dist/components/primitives/sidebar-context.d.ts +12 -0
  142. package/dist/components/primitives/sidebar-context.js +13 -0
  143. package/dist/components/primitives/sidebar-context.js.map +1 -0
  144. package/dist/components/primitives/sidebar-variants.d.ts +4 -0
  145. package/dist/components/primitives/sidebar-variants.js +25 -0
  146. package/dist/components/primitives/sidebar-variants.js.map +1 -0
  147. package/dist/components/primitives/sidebar.d.ts +56 -0
  148. package/dist/components/primitives/sidebar.js +542 -0
  149. package/dist/components/primitives/sidebar.js.map +1 -0
  150. package/dist/{atoms → components/primitives}/skeleton.js +1 -1
  151. package/dist/components/primitives/skeleton.js.map +1 -0
  152. package/dist/{atoms → components/primitives}/slider.js +1 -1
  153. package/dist/components/primitives/slider.js.map +1 -0
  154. package/dist/components/primitives/sonner.js.map +1 -0
  155. package/dist/{atoms → components/primitives}/spinner.js +1 -1
  156. package/dist/components/primitives/spinner.js.map +1 -0
  157. package/dist/{atoms → components/primitives}/switch.js +1 -1
  158. package/dist/components/primitives/switch.js.map +1 -0
  159. package/dist/{atoms → components/primitives}/table.js +1 -1
  160. package/dist/components/primitives/table.js.map +1 -0
  161. package/dist/{atoms → components/primitives}/tabs.js +1 -1
  162. package/dist/components/primitives/tabs.js.map +1 -0
  163. package/dist/{atoms → components/primitives}/textarea.js +1 -1
  164. package/dist/components/primitives/textarea.js.map +1 -0
  165. package/dist/components/primitives/theme-provider.js.map +1 -0
  166. package/dist/{atoms → components/primitives}/toggle-group.d.ts +1 -1
  167. package/dist/{atoms → components/primitives}/toggle-group.js +2 -2
  168. package/dist/components/primitives/toggle-group.js.map +1 -0
  169. package/dist/components/primitives/toggle-variants.d.ts +4 -0
  170. package/dist/{atoms/toggle.js → components/primitives/toggle-variants.js} +5 -24
  171. package/dist/components/primitives/toggle-variants.js.map +1 -0
  172. package/dist/components/primitives/toggle.d.ts +9 -0
  173. package/dist/components/primitives/toggle.js +21 -0
  174. package/dist/components/primitives/toggle.js.map +1 -0
  175. package/dist/{atoms → components/primitives}/tooltip.js +1 -1
  176. package/dist/components/primitives/tooltip.js.map +1 -0
  177. package/dist/composites/index.js +11 -0
  178. package/dist/{organisms → composites}/index.js.map +1 -1
  179. package/dist/hooks/index.d.ts +7 -0
  180. package/dist/hooks/index.js +8 -2
  181. package/dist/hooks/index.js.map +1 -1
  182. package/dist/hooks/use-aria-live.d.ts +22 -0
  183. package/dist/hooks/use-aria-live.js +18 -0
  184. package/dist/hooks/use-aria-live.js.map +1 -0
  185. package/dist/hooks/use-focus-visible.d.ts +15 -0
  186. package/dist/hooks/use-focus-visible.js +16 -0
  187. package/dist/hooks/use-focus-visible.js.map +1 -0
  188. package/dist/hooks/use-screen-reader-only.d.ts +14 -0
  189. package/dist/hooks/use-screen-reader-only.js +10 -0
  190. package/dist/hooks/use-screen-reader-only.js.map +1 -0
  191. package/dist/index.d.ts +10 -58
  192. package/dist/index.js +371 -344
  193. package/dist/index.js.map +1 -1
  194. package/dist/lib/index.d.ts +3 -0
  195. package/dist/lib/index.js +8 -2
  196. package/dist/lib/index.js.map +1 -1
  197. package/dist/lib/utils-enhanced.d.ts +27 -0
  198. package/dist/lib/utils-enhanced.js +28 -0
  199. package/dist/lib/utils-enhanced.js.map +1 -0
  200. package/dist/lib/utils-enhanced.test.d.ts +1 -0
  201. package/dist/marketing/index.js +9 -0
  202. package/dist/primitives/index.js +345 -0
  203. package/dist/{atoms → primitives}/index.js.map +1 -1
  204. package/package.json +18 -26
  205. package/dist/atoms/accordion.js.map +0 -1
  206. package/dist/atoms/alert-dialog.js.map +0 -1
  207. package/dist/atoms/alert.js.map +0 -1
  208. package/dist/atoms/aspect-ratio.js.map +0 -1
  209. package/dist/atoms/avatar.js.map +0 -1
  210. package/dist/atoms/badge.d.ts +0 -9
  211. package/dist/atoms/badge.js.map +0 -1
  212. package/dist/atoms/breadcrumb.js.map +0 -1
  213. package/dist/atoms/button-group.d.ts +0 -11
  214. package/dist/atoms/button-group.js +0 -76
  215. package/dist/atoms/button-group.js.map +0 -1
  216. package/dist/atoms/button.d.ts +0 -10
  217. package/dist/atoms/button.js.map +0 -1
  218. package/dist/atoms/calendar.js.map +0 -1
  219. package/dist/atoms/card.js.map +0 -1
  220. package/dist/atoms/carousel.js.map +0 -1
  221. package/dist/atoms/chart.js.map +0 -1
  222. package/dist/atoms/checkbox.js.map +0 -1
  223. package/dist/atoms/collapsible.js.map +0 -1
  224. package/dist/atoms/command.js.map +0 -1
  225. package/dist/atoms/context-menu.js.map +0 -1
  226. package/dist/atoms/dialog.js.map +0 -1
  227. package/dist/atoms/drawer.js.map +0 -1
  228. package/dist/atoms/dropdown-menu.js.map +0 -1
  229. package/dist/atoms/empty.js.map +0 -1
  230. package/dist/atoms/field.js.map +0 -1
  231. package/dist/atoms/form.d.ts +0 -24
  232. package/dist/atoms/form.js +0 -88
  233. package/dist/atoms/form.js.map +0 -1
  234. package/dist/atoms/hover-card.js.map +0 -1
  235. package/dist/atoms/index.d.ts +0 -54
  236. package/dist/atoms/index.js +0 -342
  237. package/dist/atoms/input-group.js.map +0 -1
  238. package/dist/atoms/input-otp.js.map +0 -1
  239. package/dist/atoms/input.js.map +0 -1
  240. package/dist/atoms/item.js.map +0 -1
  241. package/dist/atoms/kbd.js.map +0 -1
  242. package/dist/atoms/label.js.map +0 -1
  243. package/dist/atoms/menubar.js.map +0 -1
  244. package/dist/atoms/navigation-menu.d.ts +0 -14
  245. package/dist/atoms/navigation-menu.js +0 -160
  246. package/dist/atoms/navigation-menu.js.map +0 -1
  247. package/dist/atoms/pagination.js.map +0 -1
  248. package/dist/atoms/popover.js.map +0 -1
  249. package/dist/atoms/progress.js.map +0 -1
  250. package/dist/atoms/radio-group.js.map +0 -1
  251. package/dist/atoms/resizable.js.map +0 -1
  252. package/dist/atoms/scroll-area.js.map +0 -1
  253. package/dist/atoms/select.js.map +0 -1
  254. package/dist/atoms/separator.js.map +0 -1
  255. package/dist/atoms/sheet.js.map +0 -1
  256. package/dist/atoms/sidebar.d.ts +0 -70
  257. package/dist/atoms/sidebar.js +0 -573
  258. package/dist/atoms/sidebar.js.map +0 -1
  259. package/dist/atoms/skeleton.js.map +0 -1
  260. package/dist/atoms/slider.js.map +0 -1
  261. package/dist/atoms/sonner.js.map +0 -1
  262. package/dist/atoms/spinner.js.map +0 -1
  263. package/dist/atoms/switch.js.map +0 -1
  264. package/dist/atoms/table.js.map +0 -1
  265. package/dist/atoms/tabs.js.map +0 -1
  266. package/dist/atoms/textarea.js.map +0 -1
  267. package/dist/atoms/theme-provider.js.map +0 -1
  268. package/dist/atoms/toggle-group.js.map +0 -1
  269. package/dist/atoms/toggle.d.ts +0 -9
  270. package/dist/atoms/toggle.js.map +0 -1
  271. package/dist/atoms/tooltip.js.map +0 -1
  272. package/dist/default-layout.js +0 -114
  273. package/dist/default-layout.js.map +0 -1
  274. package/dist/molecules/index.d.ts +0 -3
  275. package/dist/molecules/index.js +0 -9
  276. package/dist/molecules/sidebar-theme-toggle.d.ts +0 -5
  277. package/dist/molecules/sidebar-theme-toggle.js +0 -39
  278. package/dist/molecules/sidebar-theme-toggle.js.map +0 -1
  279. package/dist/molecules/theme-toggle.js.map +0 -1
  280. package/dist/molecules/user-menu.js.map +0 -1
  281. package/dist/organisms/app-navbar.d.ts +0 -73
  282. package/dist/organisms/app-navbar.js +0 -142
  283. package/dist/organisms/app-navbar.js.map +0 -1
  284. package/dist/organisms/app-sidebar.d.ts +0 -67
  285. package/dist/organisms/app-sidebar.js +0 -161
  286. package/dist/organisms/app-sidebar.js.map +0 -1
  287. package/dist/organisms/index.d.ts +0 -2
  288. package/dist/organisms/index.js +0 -7
  289. /package/dist/{molecules → components/composites}/theme-toggle.d.ts +0 -0
  290. /package/dist/{molecules → components/composites}/user-menu.d.ts +0 -0
  291. /package/dist/{atoms → components/primitives}/accordion.d.ts +0 -0
  292. /package/dist/{atoms → components/primitives}/alert-dialog.d.ts +0 -0
  293. /package/dist/{atoms → components/primitives}/alert.d.ts +0 -0
  294. /package/dist/{atoms → components/primitives}/aspect-ratio.d.ts +0 -0
  295. /package/dist/{atoms → components/primitives}/aspect-ratio.js +0 -0
  296. /package/dist/{atoms → components/primitives}/avatar.d.ts +0 -0
  297. /package/dist/{atoms → components/primitives}/breadcrumb.d.ts +0 -0
  298. /package/dist/{atoms → components/primitives}/card.d.ts +0 -0
  299. /package/dist/{atoms → components/primitives}/chart.d.ts +0 -0
  300. /package/dist/{atoms → components/primitives}/checkbox.d.ts +0 -0
  301. /package/dist/{atoms → components/primitives}/collapsible.d.ts +0 -0
  302. /package/dist/{atoms → components/primitives}/collapsible.js +0 -0
  303. /package/dist/{atoms → components/primitives}/context-menu.d.ts +0 -0
  304. /package/dist/{atoms → components/primitives}/dialog.d.ts +0 -0
  305. /package/dist/{atoms → components/primitives}/drawer.d.ts +0 -0
  306. /package/dist/{atoms → components/primitives}/dropdown-menu.d.ts +0 -0
  307. /package/dist/{atoms → components/primitives}/empty.d.ts +0 -0
  308. /package/dist/{atoms → components/primitives}/hover-card.d.ts +0 -0
  309. /package/dist/{atoms → components/primitives}/input-otp.d.ts +0 -0
  310. /package/dist/{atoms → components/primitives}/input.d.ts +0 -0
  311. /package/dist/{atoms → components/primitives}/kbd.d.ts +0 -0
  312. /package/dist/{atoms → components/primitives}/label.d.ts +0 -0
  313. /package/dist/{atoms → components/primitives}/menubar.d.ts +0 -0
  314. /package/dist/{atoms → components/primitives}/popover.d.ts +0 -0
  315. /package/dist/{atoms → components/primitives}/progress.d.ts +0 -0
  316. /package/dist/{atoms → components/primitives}/radio-group.d.ts +0 -0
  317. /package/dist/{atoms → components/primitives}/resizable.d.ts +0 -0
  318. /package/dist/{atoms → components/primitives}/scroll-area.d.ts +0 -0
  319. /package/dist/{atoms → components/primitives}/select.d.ts +0 -0
  320. /package/dist/{atoms → components/primitives}/separator.d.ts +0 -0
  321. /package/dist/{atoms → components/primitives}/sheet.d.ts +0 -0
  322. /package/dist/{atoms → components/primitives}/skeleton.d.ts +0 -0
  323. /package/dist/{atoms → components/primitives}/slider.d.ts +0 -0
  324. /package/dist/{atoms → components/primitives}/sonner.d.ts +0 -0
  325. /package/dist/{atoms → components/primitives}/sonner.js +0 -0
  326. /package/dist/{atoms → components/primitives}/spinner.d.ts +0 -0
  327. /package/dist/{atoms → components/primitives}/switch.d.ts +0 -0
  328. /package/dist/{atoms → components/primitives}/table.d.ts +0 -0
  329. /package/dist/{atoms → components/primitives}/tabs.d.ts +0 -0
  330. /package/dist/{atoms → components/primitives}/textarea.d.ts +0 -0
  331. /package/dist/{atoms → components/primitives}/theme-provider.d.ts +0 -0
  332. /package/dist/{atoms → components/primitives}/theme-provider.js +0 -0
  333. /package/dist/{atoms → components/primitives}/tooltip.d.ts +0 -0
  334. /package/dist/{molecules → marketing}/index.js.map +0 -0
package/README.md CHANGED
@@ -1,113 +1,97 @@
1
- # React Shadcn Kit Component Library
1
+ # React Shadcn Kit Premium
2
2
 
3
- A comprehensive, atomic design-based component library built with React, TypeScript, Tailwind CSS v4, and shadcn/ui.
3
+ A state-of-the-art, high-performance UI library built with **React 19**, **Tailwind CSS v4**, and **shadcn/ui**. This kit provides a structured, type-safe foundation for building premium web applications and marketing sites with ease.
4
4
 
5
- ## Features
5
+ ## ✨ Key Features
6
6
 
7
- - **Atomic Design Structure**: Components organized into atoms, molecules, and organisms.
8
- - **Configurable Navigation**: `AppSidebar` and `AppNavbar` driven by JSON configuration.
9
- - **Responsive Layout**: Built-in `Layout` component handling mobile and desktop views.
10
- - **Theming**: Integrated dark mode support.
11
- - **TypeScript Support**: Fully typed components and configurations.
7
+ - **🚀 Premium Aesthetics**: Modern design system with vibrant colors, glassmorphism, and smooth animations.
8
+ - **🏗️ Atomic Architecture**: Organized into `primitives`, `composites`, and `marketing` layers for maximum reusability.
9
+ - **⚡ Performance First**: Zero Tailwind runtime overhead, optimized build pipeline, and light-weight exports.
10
+ - **🛡️ Type Safety**: Full TypeScript support with strict mode and exported types for every component.
11
+ - **🌟 Interactive Elements**: Advanced components like `ActionButton` with built-in transitions and `CustomButton` with rich hover effects.
12
+ - **📣 Accessibility**: Built-in ARIA hooks and screen-reader utilities.
12
13
 
13
- ## Installation
14
+ ## 📦 Installation
14
15
 
15
16
  ```bash
16
17
  npm install react-shadcn-kit
17
- # or
18
- yarn add react-shadcn-kit
19
18
  ```
20
19
 
21
- ## Usage
20
+ ## 📂 Library Structure
22
21
 
23
- ### Basic Layout
22
+ We follow a modular structure to keep your bundle small:
24
23
 
25
- Wrap your application with the `Layout` component to get the sidebar and navbar structure automatically.
24
+ - `react-shadcn-kit/primitives`: Core UI building blocks (Button, Input, LoadingSwap, etc.)
25
+ - `react-shadcn-kit/composites`: Complex interactive units (ActionButton, SidebarWrapper, UserMenu)
26
+ - `react-shadcn-kit/marketing`: high-impact landing page sections (HeroSection, SocialProof, ValueProps)
27
+ - `react-shadcn-kit/hooks`: Useful React hooks (useIsMobile, useAriaLive, useFocusVisible)
28
+ - `react-shadcn-kit/lib`: Essential utilities (cn, date formatting, slug generation)
29
+
30
+ ## 🚀 Usage
31
+
32
+ ### 🎨 Marketing Hero Section
26
33
 
27
34
  ```tsx
28
- import { Layout } from "react-shadcn-kit";
35
+ import { HeroSection } from "react-shadcn-kit/marketing";
29
36
 
30
- export default function App() {
37
+ export default function Landing() {
31
38
  return (
32
- <Layout>
33
- <div className="p-4">
34
- <h1>My App Content</h1>
35
- </div>
36
- </Layout>
39
+ <HeroSection
40
+ title="Create something stunning"
41
+ subtitle="Better design, faster development, premium results."
42
+ ctaText="Get Started"
43
+ badge="v0.1.1 is now live!"
44
+ />
37
45
  );
38
46
  }
39
47
  ```
40
48
 
41
- ### Configuration
42
-
43
- The navigation components are highly configurable. You can pass a `config` prop to `AppSidebar` and `AppNavbar` (via `Layout` props if exposed, or by using them directly).
49
+ ### 🔘 Interactive Action Button
44
50
 
45
- #### Sidebar Configuration (`SidebarConfig`)
51
+ Handles async states, loading indicators, and confirmation dialogs automatically.
46
52
 
47
53
  ```tsx
48
- import { AppSidebar } from "react-shadcn-kit";
49
- import { LayoutDashboard, Settings } from "lucide-react";
50
-
51
- const sidebarConfig = {
52
- branding: {
53
- name: "My App",
54
- logo: LayoutDashboard,
55
- href: "/",
56
- },
57
- fixed: true, // Set to false to make sidebar scroll with page
58
- groups: [
59
- {
60
- label: "Platform",
61
- items: [
62
- { label: "Dashboard", href: "/dashboard", icon: LayoutDashboard },
63
- { label: "Settings", href: "/settings", icon: Settings },
64
- ],
65
- },
66
- ],
67
- user: {
68
- name: "John Doe",
69
- email: "john@example.com",
70
- avatar: "https://github.com/shadcn.png",
71
- },
72
- userMenuItems: [
73
- { label: "Profile", href: "/profile" },
74
- { label: "Log out", onClick: () => console.log("Logout") },
75
- ],
76
- };
77
-
78
- <AppSidebar config={sidebarConfig} />;
54
+ import { ActionButton } from "react-shadcn-kit/composites";
55
+
56
+ async function deleteProject() {
57
+ // Your async logic
58
+ return { error: false, message: "Project deleted successfully" };
59
+ }
60
+
61
+ <ActionButton
62
+ variant="destructive"
63
+ action={deleteProject}
64
+ requireAreYouSure
65
+ areYouSureDescription="This will permanently delete your project data."
66
+ >
67
+ Delete Project
68
+ </ActionButton>;
79
69
  ```
80
70
 
81
- #### Navbar Configuration (`NavbarConfig`)
71
+ ### 🛠️ Enhanced Utilities
82
72
 
83
73
  ```tsx
84
- import { AppNavbar } from "react-shadcn-kit";
85
-
86
- const navbarConfig = {
87
- items: [
88
- { label: "Overview", href: "/overview" },
89
- { label: "Docs", href: "/docs" },
90
- ],
91
- searchPlaceholder: "Search docs...",
92
- userMenuItems: [
93
- { label: "Profile", href: "/profile" },
94
- { label: "Settings", href: "/settings" },
95
- ],
96
- };
97
-
98
- <AppNavbar config={navbarConfig} />;
74
+ import { formatDate, generateSlug } from "react-shadcn-kit/lib";
75
+
76
+ const date = formatDate(new Date()); // "Oct 24, 2023"
77
+ const slug = generateSlug("Hello World!"); // "hello-world"
99
78
  ```
100
79
 
101
- ## Development
80
+ ## 🛠️ Development
102
81
 
103
- To run the local development application:
82
+ Run the playground locally:
104
83
 
105
84
  ```bash
106
85
  npm run dev
107
86
  ```
108
87
 
109
- To build the library:
88
+ Validate exports and build:
110
89
 
111
90
  ```bash
91
+ npm run test:exports
112
92
  npm run build
113
93
  ```
94
+
95
+ ## 📄 License
96
+
97
+ MIT © [Tushar Yadav](https://github.com/tusharyadav21)