shadcn-glass-ui 1.0.11 → 2.0.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 (215) hide show
  1. package/CHANGELOG.md +213 -0
  2. package/README.md +174 -17
  3. package/context7.json +58 -0
  4. package/dist/cli/index.cjs +470 -0
  5. package/dist/cli/index.cjs.map +1 -0
  6. package/dist/cli/index.d.ts +18 -0
  7. package/dist/cli/index.js +469 -0
  8. package/dist/cli/index.js.map +1 -0
  9. package/dist/components.cjs +4 -4
  10. package/dist/components.d.ts +153 -22
  11. package/dist/components.js +2 -2
  12. package/dist/hooks.cjs +2 -2
  13. package/dist/index.cjs +872 -5
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.d.ts +0 -2390
  16. package/dist/index.js +844 -3
  17. package/dist/index.js.map +1 -1
  18. package/dist/r/ai-card-glass.json +5 -12
  19. package/dist/r/avatar-glass.json +5 -15
  20. package/dist/r/circular-metric-glass.json +5 -11
  21. package/dist/r/circular-progress-glass.json +5 -12
  22. package/dist/r/combobox-glass.json +5 -13
  23. package/dist/r/flag-alert-glass.json +5 -11
  24. package/dist/r/flags-section-glass.json +5 -12
  25. package/dist/r/insight-card-glass.json +17 -0
  26. package/dist/r/interactive-card.json +5 -12
  27. package/dist/r/language-bar-glass.json +5 -11
  28. package/dist/r/metric-card-glass.json +6 -13
  29. package/dist/r/metrics-grid-glass.json +5 -11
  30. package/dist/r/modal-glass.json +5 -15
  31. package/dist/r/progress-glass.json +5 -13
  32. package/dist/r/registry.json +20 -2
  33. package/dist/r/segmented-control-glass.json +5 -11
  34. package/dist/r/sparkline-glass.json +17 -0
  35. package/dist/r/stepper-glass.json +33 -0
  36. package/dist/r/tabs-glass.json +4 -9
  37. package/dist/r/trust-score-card-glass.json +5 -12
  38. package/dist/r/year-card-glass.json +5 -13
  39. package/dist/shadcn-glass-ui.css +1 -1
  40. package/dist/{theme-context-XtasSxRT.cjs → theme-context-CVW50BKW.cjs} +2 -2
  41. package/dist/{theme-context-XtasSxRT.cjs.map → theme-context-CVW50BKW.cjs.map} +1 -1
  42. package/dist/themes.cjs +1 -1
  43. package/dist/trust-score-card-glass-BcZbul0P.js +26895 -0
  44. package/dist/trust-score-card-glass-BcZbul0P.js.map +1 -0
  45. package/dist/trust-score-card-glass-r3qM09Jp.cjs +27689 -0
  46. package/dist/trust-score-card-glass-r3qM09Jp.cjs.map +1 -0
  47. package/dist/{use-focus-BbpE2qGq.cjs → use-focus-ZE8ozmZE.cjs} +2 -2
  48. package/dist/{use-focus-BbpE2qGq.cjs.map → use-focus-ZE8ozmZE.cjs.map} +1 -1
  49. package/dist/{use-wallpaper-tint-CIqtoETa.cjs → use-wallpaper-tint-BuS80tbN.cjs} +2 -2
  50. package/dist/{use-wallpaper-tint-CIqtoETa.cjs.map → use-wallpaper-tint-BuS80tbN.cjs.map} +1 -1
  51. package/dist/{utils-CGCOTvxT.js → utils-CcyeqpKQ.js} +1 -1
  52. package/dist/{utils-CGCOTvxT.js.map → utils-CcyeqpKQ.js.map} +1 -1
  53. package/dist/{utils-CriE74ig.cjs → utils-DLXayspX.cjs} +2 -2
  54. package/dist/{utils-CriE74ig.cjs.map → utils-DLXayspX.cjs.map} +1 -1
  55. package/dist/utils.cjs +1 -1
  56. package/dist/utils.js +1 -1
  57. package/docs/AI_IMPROVEMENTS_COMPLETE.md +574 -0
  58. package/docs/AI_USAGE.md +1328 -0
  59. package/docs/API_PATTERNS_COMPARISON.md +418 -0
  60. package/docs/BEST_PRACTICES.md +800 -0
  61. package/docs/COMPLIANCE_CHECKLIST.md +307 -0
  62. package/docs/COMPLIANCE_TESTING.md +436 -0
  63. package/docs/COMPONENTS_CATALOG.md +1076 -0
  64. package/docs/CSS_VARIABLES_AUDIT.md +306 -0
  65. package/docs/CSS_VARIABLES_REFACTORING_PLAN.md +330 -0
  66. package/docs/EXPORTS_MAP.json +875 -0
  67. package/docs/EXPORTS_STRUCTURE.md +729 -0
  68. package/docs/GETTING_STARTED.md +655 -0
  69. package/docs/METRIC_CARD_API_REDESIGN.md +354 -0
  70. package/docs/PRIMITIVE_MAPPING.md +404 -0
  71. package/docs/PUBLISHING.md +593 -0
  72. package/docs/REGISTRY_SUMMARY.md +96 -0
  73. package/docs/REGISTRY_USAGE.md +339 -0
  74. package/docs/SECURITY.md +117 -0
  75. package/docs/THEME_CREATION_GUIDE.md +455 -0
  76. package/docs/TOKEN_ARCHITECTURE.md +365 -0
  77. package/docs/announcements/v1.0.5-devto.md +363 -0
  78. package/docs/announcements/v1.0.5-reddit.md +115 -0
  79. package/docs/announcements/v1.0.5-twitter.md +70 -0
  80. package/docs/api/README.md +725 -0
  81. package/docs/api/functions/ThemeProvider.md +21 -0
  82. package/docs/api/functions/cn.md +27 -0
  83. package/docs/api/functions/getNextTheme.md +21 -0
  84. package/docs/api/functions/getThemeConfig.md +21 -0
  85. package/docs/api/functions/useFocus.md +53 -0
  86. package/docs/api/functions/useHover.md +47 -0
  87. package/docs/api/functions/useResponsive.md +31 -0
  88. package/docs/api/functions/useTheme.md +15 -0
  89. package/docs/api/functions/useWallpaperTint.md +36 -0
  90. package/docs/api/globals.md +139 -0
  91. package/docs/api/interfaces/AlertGlassProps.md +131 -0
  92. package/docs/api/interfaces/AvatarGlassProps.md +114 -0
  93. package/docs/api/interfaces/BadgeGlassProps.md +118 -0
  94. package/docs/api/interfaces/ButtonGlassProps.md +179 -0
  95. package/docs/api/interfaces/CheckboxGlassProps.md +125 -0
  96. package/docs/api/interfaces/DropdownGlassProps.md +123 -0
  97. package/docs/api/interfaces/DropdownItem.md +53 -0
  98. package/docs/api/interfaces/GlassCardProps.md +151 -0
  99. package/docs/api/interfaces/InputGlassProps.md +169 -0
  100. package/docs/api/interfaces/NotificationGlassProps.md +67 -0
  101. package/docs/api/interfaces/ProgressGlassProps.md +49 -0
  102. package/docs/api/interfaces/SkeletonGlassProps.md +41 -0
  103. package/docs/api/interfaces/SliderGlassProps.md +107 -0
  104. package/docs/api/interfaces/TabItem.md +25 -0
  105. package/docs/api/interfaces/ThemeConfig.md +25 -0
  106. package/docs/api/interfaces/ThemeContextValue.md +47 -0
  107. package/docs/api/interfaces/ToggleGlassProps.md +59 -0
  108. package/docs/api/interfaces/TooltipGlassProps.md +119 -0
  109. package/docs/api/type-aliases/AlertType.md +11 -0
  110. package/docs/api/type-aliases/AlertVariant.md +11 -0
  111. package/docs/api/type-aliases/AvatarSize.md +11 -0
  112. package/docs/api/type-aliases/AvatarStatus.md +13 -0
  113. package/docs/api/type-aliases/BadgeSize.md +11 -0
  114. package/docs/api/type-aliases/BadgeVariant.md +11 -0
  115. package/docs/api/type-aliases/ButtonGlassSize.md +11 -0
  116. package/docs/api/type-aliases/ButtonGlassVariant.md +11 -0
  117. package/docs/api/type-aliases/DropdownAlign.md +11 -0
  118. package/docs/api/type-aliases/GlowType.md +11 -0
  119. package/docs/api/type-aliases/InputGlassSize.md +11 -0
  120. package/docs/api/type-aliases/IntensityType.md +11 -0
  121. package/docs/api/type-aliases/ModalSize.md +11 -0
  122. package/docs/api/type-aliases/NotificationType.md +11 -0
  123. package/docs/api/type-aliases/PaddingType.md +11 -0
  124. package/docs/api/type-aliases/ProgressGradient.md +11 -0
  125. package/docs/api/type-aliases/ProgressSize.md +11 -0
  126. package/docs/api/type-aliases/SkeletonVariant.md +11 -0
  127. package/docs/api/type-aliases/Theme.md +11 -0
  128. package/docs/api/type-aliases/ToggleGlassSize.md +11 -0
  129. package/docs/api/type-aliases/TooltipPosition.md +11 -0
  130. package/docs/api/variables/AICardGlass.md +11 -0
  131. package/docs/api/variables/AlertGlass.md +11 -0
  132. package/docs/api/variables/AvatarGlass.md +11 -0
  133. package/docs/api/variables/BadgeGlass.md +11 -0
  134. package/docs/api/variables/BaseProgressGlass.md +11 -0
  135. package/docs/api/variables/ButtonGlass.md +11 -0
  136. package/docs/api/variables/CareerStatsGlass.md +11 -0
  137. package/docs/api/variables/CareerStatsHeaderGlass.md +11 -0
  138. package/docs/api/variables/CheckboxGlass.md +11 -0
  139. package/docs/api/variables/CircularMetricGlass.md +22 -0
  140. package/docs/api/variables/CircularProgressGlass.md +11 -0
  141. package/docs/api/variables/ComboBoxGlass.md +27 -0
  142. package/docs/api/variables/ContributionMetricsGlass.md +11 -0
  143. package/docs/api/variables/DropdownGlass.md +11 -0
  144. package/docs/api/variables/ExpandableHeaderGlass.md +11 -0
  145. package/docs/api/variables/FlagAlertGlass.md +11 -0
  146. package/docs/api/variables/FlagsSectionGlass.md +11 -0
  147. package/docs/api/variables/FormFieldWrapper.md +44 -0
  148. package/docs/api/variables/GlassCard.md +11 -0
  149. package/docs/api/variables/HeaderBrandingGlass.md +11 -0
  150. package/docs/api/variables/HeaderNavGlass.md +11 -0
  151. package/docs/api/variables/IconButtonGlass.md +11 -0
  152. package/docs/api/variables/InputGlass.md +11 -0
  153. package/docs/api/variables/InteractiveCard.md +45 -0
  154. package/docs/api/variables/LanguageBarGlass.md +11 -0
  155. package/docs/api/variables/MetricCardGlass.md +11 -0
  156. package/docs/api/variables/MetricsGridGlass.md +11 -0
  157. package/docs/api/variables/ModalGlass.md +72 -0
  158. package/docs/api/variables/NotificationGlass.md +11 -0
  159. package/docs/api/variables/PopoverGlass.md +11 -0
  160. package/docs/api/variables/ProfileAvatarGlass.md +11 -0
  161. package/docs/api/variables/ProfileHeaderGlass.md +11 -0
  162. package/docs/api/variables/ProgressGlass.md +11 -0
  163. package/docs/api/variables/ProjectsListGlass.md +11 -0
  164. package/docs/api/variables/RainbowProgressGlass.md +11 -0
  165. package/docs/api/variables/RepositoryCardGlass.md +11 -0
  166. package/docs/api/variables/RepositoryHeaderGlass.md +11 -0
  167. package/docs/api/variables/RepositoryMetadataGlass.md +11 -0
  168. package/docs/api/variables/SearchBoxGlass.md +11 -0
  169. package/docs/api/variables/SegmentedControlGlass.md +11 -0
  170. package/docs/api/variables/SkeletonGlass.md +11 -0
  171. package/docs/api/variables/SliderGlass.md +11 -0
  172. package/docs/api/variables/SortDropdownGlass.md +11 -0
  173. package/docs/api/variables/StatItemGlass.md +11 -0
  174. package/docs/api/variables/StatusIndicatorGlass.md +11 -0
  175. package/docs/api/variables/THEMES.md +11 -0
  176. package/docs/api/variables/THEME_CONFIG.md +11 -0
  177. package/docs/api/variables/TabsGlass.md +52 -0
  178. package/docs/api/variables/ThemeToggleGlass.md +11 -0
  179. package/docs/api/variables/ToggleGlass.md +11 -0
  180. package/docs/api/variables/TooltipGlass.md +11 -0
  181. package/docs/api/variables/TouchTarget.md +35 -0
  182. package/docs/api/variables/TrustScoreCardGlass.md +11 -0
  183. package/docs/api/variables/TrustScoreDisplayGlass.md +11 -0
  184. package/docs/api/variables/UserInfoGlass.md +11 -0
  185. package/docs/api/variables/UserStatsLineGlass.md +11 -0
  186. package/docs/api/variables/YearCardGlass.md +11 -0
  187. package/docs/api/variables/alertVariants.md +21 -0
  188. package/docs/api/variables/avatarSizes.md +21 -0
  189. package/docs/api/variables/badgeVariants.md +21 -0
  190. package/docs/api/variables/buttonGlassVariants.md +21 -0
  191. package/docs/api/variables/cardIntensity.md +21 -0
  192. package/docs/api/variables/dropdownAlign.md +21 -0
  193. package/docs/api/variables/inputVariants.md +21 -0
  194. package/docs/api/variables/modalSizes.md +21 -0
  195. package/docs/api/variables/notificationVariants.md +21 -0
  196. package/docs/api/variables/progressSizes.md +21 -0
  197. package/docs/api/variables/shadcnAlertVariants.md +21 -0
  198. package/docs/api/variables/shadcnBadgeVariants.md +21 -0
  199. package/docs/api/variables/shadcnButtonVariants.md +21 -0
  200. package/docs/api/variables/skeletonVariants.md +21 -0
  201. package/docs/api/variables/statusSizes.md +21 -0
  202. package/docs/api/variables/toggleSizes.md +21 -0
  203. package/docs/api/variables/tooltipPositions.md +21 -0
  204. package/docs/design-system/UI_DESIGN.md +628 -0
  205. package/docs/migration/CSS_VARIABLES_MIGRATION_2.0.md +325 -0
  206. package/docs/migration/modal-glass-compound-api.md +458 -0
  207. package/docs/migration/select-to-combobox.md +386 -0
  208. package/docs/migration/tabs-glass-compound-api.md +579 -0
  209. package/docs/technical/DEPENDENCIES.md +291 -0
  210. package/docs/visual-testing-guide.md +324 -0
  211. package/package.json +16 -3
  212. package/dist/trust-score-card-glass-CNcQveNY.cjs +0 -8231
  213. package/dist/trust-score-card-glass-CNcQveNY.cjs.map +0 -1
  214. package/dist/trust-score-card-glass-CowcDyxH.js +0 -7795
  215. package/dist/trust-score-card-glass-CowcDyxH.js.map +0 -1
@@ -0,0 +1,339 @@
1
+ # shadcn-glass-ui Registry Usage
2
+
3
+ This guide explains how to use the shadcn-glass-ui component registry with the shadcn CLI.
4
+
5
+ ## Overview
6
+
7
+ The shadcn-glass-ui registry provides **55+ glassmorphism UI components** that can be installed
8
+ directly into your project using the shadcn CLI, just like official shadcn/ui components.
9
+
10
+ **Registry URL:** `https://raw.githubusercontent.com/Yhooi2/shadcn-glass-ui-library/main/public/r`
11
+
12
+ **v2.0.0 Update:** All registry components now use the 3-layer token system. If upgrading from v1.x,
13
+ see the [CSS Variables Migration Guide](migration/CSS_VARIABLES_MIGRATION_2.0.md) for automated
14
+ migration scripts.
15
+
16
+ ## Quick Start
17
+
18
+ ### 1. Configure Your Project
19
+
20
+ Add the shadcn-glass-ui registry to your `components.json`:
21
+
22
+ ```json
23
+ {
24
+ "$schema": "https://ui.shadcn.com/schema.json",
25
+ "style": "new-york",
26
+ "rsc": false,
27
+ "tsx": true,
28
+ "tailwind": {
29
+ "config": "",
30
+ "css": "src/index.css",
31
+ "baseColor": "neutral",
32
+ "cssVariables": true,
33
+ "prefix": ""
34
+ },
35
+ "iconLibrary": "lucide",
36
+ "aliases": {
37
+ "components": "@/components",
38
+ "utils": "@/lib/utils",
39
+ "ui": "@/components/ui",
40
+ "lib": "@/lib",
41
+ "hooks": "@/hooks"
42
+ },
43
+ "registries": {
44
+ "@shadcn-glass-ui": {
45
+ "url": "https://raw.githubusercontent.com/Yhooi2/shadcn-glass-ui-library/main/public/r"
46
+ }
47
+ }
48
+ }
49
+ ```
50
+
51
+ ### 2. Install Components
52
+
53
+ Use the shadcn CLI with the registry namespace:
54
+
55
+ ```bash
56
+ # Install a single component
57
+ npx shadcn@latest add @shadcn-glass-ui/button-glass
58
+
59
+ # Install multiple components
60
+ npx shadcn@latest add @shadcn-glass-ui/button-glass @shadcn-glass-ui/input-glass @shadcn-glass-ui/modal-glass
61
+
62
+ # Install with dependencies
63
+ npx shadcn@latest add @shadcn-glass-ui/button-glass --deps
64
+ ```
65
+
66
+ ### 3. Use in Your Code
67
+
68
+ After installation, components will be available in your project:
69
+
70
+ ```tsx
71
+ import { ButtonGlass } from '@/components/glass/ui/button-glass';
72
+ import { InputGlass } from '@/components/glass/ui/input-glass';
73
+ import { ThemeProvider } from '@/lib/theme-context';
74
+
75
+ function App() {
76
+ return (
77
+ <ThemeProvider defaultTheme="glass">
78
+ <div className="p-8 space-y-4">
79
+ <ButtonGlass variant="primary">Click me</ButtonGlass>
80
+ <InputGlass placeholder="Enter text..." />
81
+ </div>
82
+ </ThemeProvider>
83
+ );
84
+ }
85
+ ```
86
+
87
+ ## Available Components
88
+
89
+ ### Core UI Components (18)
90
+
91
+ | Component | Registry Name | Description |
92
+ | --------------------- | ------------------------------------------ | --------------------------------- |
93
+ | ButtonGlass | `@shadcn-glass-ui/button-glass` | Glass button with 6 variants |
94
+ | InputGlass | `@shadcn-glass-ui/input-glass` | Glass text input field |
95
+ | CheckboxGlass | `@shadcn-glass-ui/checkbox-glass` | Glass checkbox |
96
+ | ToggleGlass | `@shadcn-glass-ui/toggle-glass` | Glass toggle switch |
97
+ | SliderGlass | `@shadcn-glass-ui/slider-glass` | Glass range slider |
98
+ | ModalGlass | `@shadcn-glass-ui/modal-glass` | Glass modal dialog (compound API) |
99
+ | TabsGlass | `@shadcn-glass-ui/tabs-glass` | Glass tabs (compound API) |
100
+ | DropdownGlass | `@shadcn-glass-ui/dropdown-glass` | Glass dropdown menu |
101
+ | TooltipGlass | `@shadcn-glass-ui/tooltip-glass` | Glass tooltip |
102
+ | AlertGlass | `@shadcn-glass-ui/alert-glass` | Glass alert (4 variants) |
103
+ | NotificationGlass | `@shadcn-glass-ui/notification-glass` | Glass toast notification |
104
+ | BadgeGlass | `@shadcn-glass-ui/badge-glass` | Glass badge (7 variants) |
105
+ | AvatarGlass | `@shadcn-glass-ui/avatar-glass` | Glass avatar with status |
106
+ | GlassCard | `@shadcn-glass-ui/glass-card` | Glass card (4 variants) |
107
+ | ProgressGlass | `@shadcn-glass-ui/progress-glass` | Glass progress bar |
108
+ | CircularProgressGlass | `@shadcn-glass-ui/circular-progress-glass` | Circular progress indicator |
109
+ | SkeletonGlass | `@shadcn-glass-ui/skeleton-glass` | Glass loading skeleton |
110
+ | ComboBoxGlass | `@shadcn-glass-ui/combobox-glass` | Glass combobox with search |
111
+ | PopoverGlass | `@shadcn-glass-ui/popover-glass` | Glass popover |
112
+
113
+ ### Atomic Components (6)
114
+
115
+ | Component | Registry Name | Description |
116
+ | --------------------- | ------------------------------------------ | ----------------- |
117
+ | IconButtonGlass | `@shadcn-glass-ui/icon-button-glass` | Icon-only button |
118
+ | ThemeToggleGlass | `@shadcn-glass-ui/theme-toggle-glass` | Theme switcher |
119
+ | SearchBoxGlass | `@shadcn-glass-ui/search-box-glass` | Search input |
120
+ | SortDropdownGlass | `@shadcn-glass-ui/sort-dropdown-glass` | Sorting dropdown |
121
+ | StatItemGlass | `@shadcn-glass-ui/stat-item-glass` | Stat display |
122
+ | ExpandableHeaderGlass | `@shadcn-glass-ui/expandable-header-glass` | Expandable header |
123
+
124
+ ### Specialized Components (8)
125
+
126
+ | Component | Registry Name | Description |
127
+ | --------------------- | ------------------------------------------ | ------------------------- |
128
+ | StatusIndicatorGlass | `@shadcn-glass-ui/status-indicator-glass` | Status dots with glow |
129
+ | SegmentedControlGlass | `@shadcn-glass-ui/segmented-control-glass` | Segmented button group |
130
+ | RainbowProgressGlass | `@shadcn-glass-ui/rainbow-progress-glass` | Rainbow gradient progress |
131
+ | LanguageBarGlass | `@shadcn-glass-ui/language-bar-glass` | Language proficiency bar |
132
+ | ProfileAvatarGlass | `@shadcn-glass-ui/profile-avatar-glass` | Large avatar with glow |
133
+ | FlagAlertGlass | `@shadcn-glass-ui/flag-alert-glass` | Warning/danger flag |
134
+ | BaseProgressGlass | `@shadcn-glass-ui/base-progress-glass` | Base progress component |
135
+
136
+ ### Composite Components (13)
137
+
138
+ | Component | Registry Name | Description |
139
+ | ------------------------ | --------------------------------------------- | ----------------------- |
140
+ | MetricCardGlass | `@shadcn-glass-ui/metric-card-glass` | Metric display card |
141
+ | YearCardGlass | `@shadcn-glass-ui/year-card-glass` | Year card for timeline |
142
+ | AICardGlass | `@shadcn-glass-ui/ai-card-glass` | AI summary card |
143
+ | RepositoryCardGlass | `@shadcn-glass-ui/repository-card-glass` | Repository card |
144
+ | TrustScoreDisplayGlass | `@shadcn-glass-ui/trust-score-display-glass` | Trust score display |
145
+ | CareerStatsHeaderGlass | `@shadcn-glass-ui/career-stats-header-glass` | Career stats header |
146
+ | CircularMetricGlass | `@shadcn-glass-ui/circular-metric-glass` | Circular metric display |
147
+ | ContributionMetricsGlass | `@shadcn-glass-ui/contribution-metrics-glass` | Contribution metrics |
148
+ | MetricsGridGlass | `@shadcn-glass-ui/metrics-grid-glass` | Metrics grid layout |
149
+ | RepositoryHeaderGlass | `@shadcn-glass-ui/repository-header-glass` | Repository header |
150
+ | RepositoryMetadataGlass | `@shadcn-glass-ui/repository-metadata-glass` | Repository metadata |
151
+ | UserInfoGlass | `@shadcn-glass-ui/user-info-glass` | User info display |
152
+ | UserStatsLineGlass | `@shadcn-glass-ui/user-stats-line-glass` | User stats line |
153
+
154
+ ### Section Components (7)
155
+
156
+ | Component | Registry Name | Description |
157
+ | ------------------- | ----------------------------------------- | -------------------------- |
158
+ | HeaderNavGlass | `@shadcn-glass-ui/header-nav-glass` | Navigation header |
159
+ | ProfileHeaderGlass | `@shadcn-glass-ui/profile-header-glass` | Profile header with avatar |
160
+ | CareerStatsGlass | `@shadcn-glass-ui/career-stats-glass` | Career statistics |
161
+ | FlagsSectionGlass | `@shadcn-glass-ui/flags-section-glass` | Flags/warnings section |
162
+ | TrustScoreCardGlass | `@shadcn-glass-ui/trust-score-card-glass` | Trust score card |
163
+ | ProjectsListGlass | `@shadcn-glass-ui/projects-list-glass` | Projects list |
164
+ | HeaderBrandingGlass | `@shadcn-glass-ui/header-branding-glass` | Branded header |
165
+
166
+ ### Primitive Components (3)
167
+
168
+ | Component | Registry Name | Description |
169
+ | ---------------- | ------------------------------------- | --------------------------- |
170
+ | TouchTarget | `@shadcn-glass-ui/touch-target` | Touch-friendly wrapper |
171
+ | FormFieldWrapper | `@shadcn-glass-ui/form-field-wrapper` | Form field structure |
172
+ | InteractiveCard | `@shadcn-glass-ui/interactive-card` | Interactive card with hover |
173
+
174
+ ## Utilities & Hooks
175
+
176
+ ### Utilities
177
+
178
+ - **cn** - Class name merging (clsx + tailwind-merge)
179
+ - **Theme utilities** - Theme configuration and helpers
180
+
181
+ ### Hooks
182
+
183
+ - **use-hover** - Hover state management
184
+ - **use-focus** - Focus state management
185
+ - **use-responsive** - Responsive breakpoint detection
186
+ - **use-wallpaper-tint** - Wallpaper tint effect
187
+
188
+ ## Installation Examples
189
+
190
+ ### Example 1: Complete Form Setup
191
+
192
+ Install all form-related components at once:
193
+
194
+ ```bash
195
+ npx shadcn@latest add \
196
+ @shadcn-glass-ui/button-glass \
197
+ @shadcn-glass-ui/input-glass \
198
+ @shadcn-glass-ui/checkbox-glass \
199
+ @shadcn-glass-ui/toggle-glass \
200
+ @shadcn-glass-ui/slider-glass
201
+ ```
202
+
203
+ ### Example 2: Dashboard UI
204
+
205
+ Install components for a dashboard interface:
206
+
207
+ ```bash
208
+ npx shadcn@latest add \
209
+ @shadcn-glass-ui/glass-card \
210
+ @shadcn-glass-ui/metric-card-glass \
211
+ @shadcn-glass-ui/progress-glass \
212
+ @shadcn-glass-ui/badge-glass \
213
+ @shadcn-glass-ui/avatar-glass
214
+ ```
215
+
216
+ ### Example 3: Navigation Setup
217
+
218
+ Install header and navigation components:
219
+
220
+ ```bash
221
+ npx shadcn@latest add \
222
+ @shadcn-glass-ui/header-nav-glass \
223
+ @shadcn-glass-ui/theme-toggle-glass \
224
+ @shadcn-glass-ui/search-box-glass \
225
+ @shadcn-glass-ui/dropdown-glass
226
+ ```
227
+
228
+ ## Features
229
+
230
+ - ✅ **shadcn/ui Compatible** - Works with existing shadcn/ui components
231
+ - ✅ **Automatic Dependencies** - CLI installs all required dependencies
232
+ - ✅ **Type Safe** - Full TypeScript support
233
+ - ✅ **Tree Shakeable** - Only bundle what you use
234
+ - ✅ **Theme System** - 3 built-in themes (glass, light, aurora)
235
+ - ✅ **Accessible** - WCAG 2.1 AA compliant
236
+ - ✅ **Customizable** - CSS variables for easy theming
237
+
238
+ ## Registry Structure
239
+
240
+ The registry follows shadcn/ui v4 schema:
241
+
242
+ ```
243
+ public/r/
244
+ ├── registry.json # Main index
245
+ ├── button-glass.json # Component metadata
246
+ ├── input-glass.json
247
+ └── ... (55 total components)
248
+ ```
249
+
250
+ Each component JSON includes:
251
+
252
+ - **$schema** - JSON schema validation
253
+ - **name** - Component identifier
254
+ - **type** - Component type (registry:ui, registry:block, etc.)
255
+ - **description** - Component description
256
+ - **dependencies** - npm dependencies
257
+ - **registryDependencies** - Other registry components
258
+ - **files** - Component source code
259
+ - **cssVars** - CSS variables for theming
260
+
261
+ ## Troubleshooting
262
+
263
+ ### Error: Registry not found
264
+
265
+ Make sure your `components.json` includes the registry configuration:
266
+
267
+ ```json
268
+ {
269
+ "registries": {
270
+ "@shadcn-glass-ui": {
271
+ "url": "https://raw.githubusercontent.com/Yhooi2/shadcn-glass-ui-library/main/public/r"
272
+ }
273
+ }
274
+ }
275
+ ```
276
+
277
+ ### Error: Component not found
278
+
279
+ Check that you're using the correct component name with the `@shadcn-glass-ui/` prefix:
280
+
281
+ ```bash
282
+ # ✅ Correct
283
+ npx shadcn@latest add @shadcn-glass-ui/button-glass
284
+
285
+ # ❌ Incorrect (missing prefix)
286
+ npx shadcn@latest add button-glass
287
+
288
+ # ❌ Incorrect (wrong name)
289
+ npx shadcn@latest add @shadcn-glass-ui/ButtonGlass
290
+ ```
291
+
292
+ ### Missing Dependencies
293
+
294
+ If you encounter missing dependencies, install them manually:
295
+
296
+ ```bash
297
+ npm install @radix-ui/react-slot class-variance-authority lucide-react
298
+ ```
299
+
300
+ Or use the `--deps` flag:
301
+
302
+ ```bash
303
+ npx shadcn@latest add @shadcn-glass-ui/button-glass --deps
304
+ ```
305
+
306
+ ## Alternative Installation
307
+
308
+ If you prefer not to use the registry, you can install components via npm:
309
+
310
+ ```bash
311
+ npm install shadcn-glass-ui
312
+ ```
313
+
314
+ ```tsx
315
+ import { ButtonGlass, InputGlass } from 'shadcn-glass-ui';
316
+ import 'shadcn-glass-ui/dist/styles.css';
317
+ ```
318
+
319
+ See [GETTING_STARTED.md](./GETTING_STARTED.md) for npm installation guide.
320
+
321
+ ## Resources
322
+
323
+ - **Live Demo:** https://yhooi2.github.io/shadcn-glass-ui-library/
324
+ - **GitHub:** https://github.com/Yhooi2/shadcn-glass-ui-library
325
+ - **npm Package:** https://www.npmjs.com/package/shadcn-glass-ui
326
+ - **Documentation:** https://github.com/Yhooi2/shadcn-glass-ui-library/tree/main/docs
327
+
328
+ ## Contributing
329
+
330
+ Found a bug or want to add a component to the registry? Contributions are welcome!
331
+
332
+ 1. Fork the repository
333
+ 2. Make your changes
334
+ 3. Run `npm run generate:registry` to update registry files
335
+ 4. Submit a pull request
336
+
337
+ ## License
338
+
339
+ MIT © shadcn-glass-ui
@@ -0,0 +1,117 @@
1
+ # Security Configuration
2
+
3
+ This document describes the security measures implemented in this project.
4
+
5
+ ## Automated Security Checks
6
+
7
+ ### 1. GitHub Dependabot
8
+
9
+ **File:** `.github/dependabot.yml`
10
+
11
+ Automatically creates PRs for:
12
+
13
+ - npm dependency updates (weekly, Monday 9:00 UTC)
14
+ - GitHub Actions updates (weekly)
15
+
16
+ Features:
17
+
18
+ - Groups related dependencies to reduce PR noise
19
+ - Cooldown periods to avoid too-frequent updates
20
+ - Ignores major version updates for critical packages (requires manual review)
21
+
22
+ ### 2. Security Workflow
23
+
24
+ **File:** `.github/workflows/security.yml`
25
+
26
+ Runs on every push/PR and weekly:
27
+
28
+ | Check | Description | Fail Condition |
29
+ | --------------------- | -------------------------------------- | ----------------------------- |
30
+ | **npm audit** | Checks for known vulnerabilities | Critical vulnerabilities |
31
+ | **CodeQL** | Static analysis for security issues | Security alerts |
32
+ | **License check** | Verifies dependency licenses | Non-approved licenses |
33
+ | **Dependency review** | Reviews new dependencies in PRs | High/critical vulnerabilities |
34
+ | **Secrets scan** | Detects accidentally committed secrets | Verified secrets found |
35
+
36
+ ### 3. Pre-commit Hooks
37
+
38
+ **Files:** `.husky/pre-commit`, `.lintstagedrc.json`
39
+
40
+ Runs before every commit:
41
+
42
+ - ESLint with `--max-warnings=0`
43
+ - Prettier formatting
44
+ - Only on staged files (fast)
45
+
46
+ ### 4. Bundle Size Tracking
47
+
48
+ **File:** `.github/workflows/bundle-size.yml`
49
+
50
+ Monitors bundle size on every PR:
51
+
52
+ - Reports size of ESM, CJS, and CSS bundles
53
+ - Warns if bundles exceed soft limits
54
+ - Fails if bundles exceed hard limits
55
+
56
+ ## Manual Setup Required
57
+
58
+ ### Socket.dev (Recommended)
59
+
60
+ Socket.dev provides advanced supply-chain attack protection. It's free for open source projects.
61
+
62
+ **To enable:**
63
+
64
+ 1. Go to [GitHub Marketplace - Socket Security](https://github.com/marketplace/socket-security)
65
+ 2. Click "Install it for free"
66
+ 3. Select this repository
67
+ 4. Socket will automatically scan all PRs for:
68
+ - Known malware in dependencies
69
+ - Suspicious package behavior (network access, eval, shell commands)
70
+ - Typosquatting attacks
71
+ - Protestware
72
+ - Telemetry/data collection
73
+
74
+ **Why Socket.dev?**
75
+
76
+ Traditional security tools (npm audit, Snyk) only detect _known_ vulnerabilities. Socket.dev uses
77
+ static analysis to detect _suspicious behavior_ in packages, catching supply-chain attacks before
78
+ they're publicly known.
79
+
80
+ ### GitHub Security Settings
81
+
82
+ Enable these in repository Settings → Security:
83
+
84
+ 1. **Secret scanning** - Detects accidentally committed secrets
85
+ 2. **Push protection** - Blocks pushes containing secrets
86
+ 3. **Dependabot security updates** - Auto-creates PRs for security fixes
87
+ 4. **Code scanning** - Already configured via CodeQL workflow
88
+
89
+ ## Approved Licenses
90
+
91
+ The following licenses are allowed for dependencies:
92
+
93
+ - MIT, MIT\*, MIT-0, (MIT OR CC0-1.0)
94
+ - Apache-2.0
95
+ - BSD-2-Clause, BSD-3-Clause
96
+ - ISC, 0BSD
97
+ - CC0-1.0, CC-BY-3.0, CC-BY-4.0
98
+ - MPL-2.0
99
+ - Unlicense
100
+ - Python-2.0
101
+ - BlueOak-1.0.0
102
+
103
+ ## Security Contacts
104
+
105
+ For security issues, please:
106
+
107
+ 1. **DO NOT** open a public issue
108
+ 2. Use GitHub's private vulnerability reporting
109
+ 3. Or email the maintainers directly
110
+
111
+ ## Best Practices for Contributors
112
+
113
+ 1. **Never commit secrets** - Use environment variables
114
+ 2. **Review dependency changes** - Check `package-lock.json` diffs carefully
115
+ 3. **Avoid unnecessary dependencies** - Each dependency is a potential attack vector
116
+ 4. **Keep dependencies updated** - Merge Dependabot PRs promptly
117
+ 5. **Use `npm ci`** - Not `npm install` in CI (ensures lockfile integrity)