@machinemetrics/mm-react-components 0.1.1-1 → 0.2.3-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 (222) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +246 -0
  3. package/dist/App.d.ts +3 -0
  4. package/dist/App.d.ts.map +1 -0
  5. package/dist/components/ui/accordion.d.ts +10 -0
  6. package/dist/components/ui/accordion.d.ts.map +1 -0
  7. package/dist/components/ui/badge.d.ts +10 -0
  8. package/dist/components/ui/badge.d.ts.map +1 -0
  9. package/dist/components/ui/button.d.ts +11 -0
  10. package/dist/components/ui/button.d.ts.map +1 -0
  11. package/dist/components/ui/calendar.d.ts +9 -0
  12. package/dist/components/ui/calendar.d.ts.map +1 -0
  13. package/dist/components/ui/checkbox.d.ts +5 -0
  14. package/dist/components/ui/checkbox.d.ts.map +1 -0
  15. package/dist/components/ui/collapsible.d.ts +7 -0
  16. package/dist/components/ui/collapsible.d.ts.map +1 -0
  17. package/dist/components/ui/data-table/TableView.d.ts +3 -0
  18. package/dist/components/ui/data-table/TableView.d.ts.map +1 -0
  19. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts +10 -0
  20. package/dist/components/ui/data-table/cards/ResponsiveTable.d.ts.map +1 -0
  21. package/dist/components/ui/data-table/cards/RowCard.d.ts +9 -0
  22. package/dist/components/ui/data-table/cards/RowCard.d.ts.map +1 -0
  23. package/dist/components/ui/data-table/cards/index.d.ts +2 -0
  24. package/dist/components/ui/data-table/cards/index.d.ts.map +1 -0
  25. package/dist/components/ui/data-table/columnTypes/badgeColumn.d.ts +16 -0
  26. package/dist/components/ui/data-table/columnTypes/badgeColumn.d.ts.map +1 -0
  27. package/dist/components/ui/data-table/columnTypes/createColumn.d.ts +8 -0
  28. package/dist/components/ui/data-table/columnTypes/createColumn.d.ts.map +1 -0
  29. package/dist/components/ui/data-table/columnTypes/dateColumn.d.ts +13 -0
  30. package/dist/components/ui/data-table/columnTypes/dateColumn.d.ts.map +1 -0
  31. package/dist/components/ui/data-table/columnTypes/index.d.ts +8 -0
  32. package/dist/components/ui/data-table/columnTypes/index.d.ts.map +1 -0
  33. package/dist/components/ui/data-table/columnTypes/multiBadgeColumn.d.ts +16 -0
  34. package/dist/components/ui/data-table/columnTypes/multiBadgeColumn.d.ts.map +1 -0
  35. package/dist/components/ui/data-table/columnTypes/numericColumn.d.ts +15 -0
  36. package/dist/components/ui/data-table/columnTypes/numericColumn.d.ts.map +1 -0
  37. package/dist/components/ui/data-table/columnTypes/selectionColumn.d.ts +10 -0
  38. package/dist/components/ui/data-table/columnTypes/selectionColumn.d.ts.map +1 -0
  39. package/dist/components/ui/data-table/columnTypes/textColumn.d.ts +13 -0
  40. package/dist/components/ui/data-table/columnTypes/textColumn.d.ts.map +1 -0
  41. package/dist/components/ui/data-table/index.d.ts +14 -0
  42. package/dist/components/ui/data-table/index.d.ts.map +1 -0
  43. package/dist/components/ui/data-table/metadata/ColumnRegistry.d.ts +90 -0
  44. package/dist/components/ui/data-table/metadata/ColumnRegistry.d.ts.map +1 -0
  45. package/dist/components/ui/data-table/metadata/alignment.d.ts +8 -0
  46. package/dist/components/ui/data-table/metadata/alignment.d.ts.map +1 -0
  47. package/dist/components/ui/data-table/pagination.d.ts +9 -0
  48. package/dist/components/ui/data-table/pagination.d.ts.map +1 -0
  49. package/dist/components/ui/data-table/state/index.d.ts +3 -0
  50. package/dist/components/ui/data-table/state/index.d.ts.map +1 -0
  51. package/dist/components/ui/data-table/state/useBreakpoint.d.ts +2 -0
  52. package/dist/components/ui/data-table/state/useBreakpoint.d.ts.map +1 -0
  53. package/dist/components/ui/data-table/state/useDataTableState.d.ts +19 -0
  54. package/dist/components/ui/data-table/state/useDataTableState.d.ts.map +1 -0
  55. package/dist/components/ui/data-table/tokens.d.ts +10 -0
  56. package/dist/components/ui/data-table/tokens.d.ts.map +1 -0
  57. package/dist/components/ui/data-table/toolbar/ColumnVisibilityMenu.d.ts +8 -0
  58. package/dist/components/ui/data-table/toolbar/ColumnVisibilityMenu.d.ts.map +1 -0
  59. package/dist/components/ui/data-table/toolbar/DataTableToolbar.d.ts +15 -0
  60. package/dist/components/ui/data-table/toolbar/DataTableToolbar.d.ts.map +1 -0
  61. package/dist/components/ui/data-table/toolbar/MenuHeader.d.ts +8 -0
  62. package/dist/components/ui/data-table/toolbar/MenuHeader.d.ts.map +1 -0
  63. package/dist/components/ui/data-table/toolbar/SortMenu.d.ts +7 -0
  64. package/dist/components/ui/data-table/toolbar/SortMenu.d.ts.map +1 -0
  65. package/dist/components/ui/data-table/toolbar/filters/DateRangeFilter.d.ts +5 -0
  66. package/dist/components/ui/data-table/toolbar/filters/DateRangeFilter.d.ts.map +1 -0
  67. package/dist/components/ui/data-table/toolbar/filters/FilterMenu.d.ts +10 -0
  68. package/dist/components/ui/data-table/toolbar/filters/FilterMenu.d.ts.map +1 -0
  69. package/dist/components/ui/data-table/toolbar/filters/InlineDateRangePicker.d.ts +10 -0
  70. package/dist/components/ui/data-table/toolbar/filters/InlineDateRangePicker.d.ts.map +1 -0
  71. package/dist/components/ui/data-table/toolbar/filters/NumericRangeFilter.d.ts +5 -0
  72. package/dist/components/ui/data-table/toolbar/filters/NumericRangeFilter.d.ts.map +1 -0
  73. package/dist/components/ui/data-table/toolbar/filters/SelectFilter.d.ts +6 -0
  74. package/dist/components/ui/data-table/toolbar/filters/SelectFilter.d.ts.map +1 -0
  75. package/dist/components/ui/data-table/toolbar/filters/TextFilter.d.ts +5 -0
  76. package/dist/components/ui/data-table/toolbar/filters/TextFilter.d.ts.map +1 -0
  77. package/dist/components/ui/data-table/toolbar/filters/index.d.ts +9 -0
  78. package/dist/components/ui/data-table/toolbar/filters/index.d.ts.map +1 -0
  79. package/dist/components/ui/data-table/toolbar/filters/types.d.ts +26 -0
  80. package/dist/components/ui/data-table/toolbar/filters/types.d.ts.map +1 -0
  81. package/dist/components/ui/data-table/toolbar/filters/useColumnFilters.d.ts +5 -0
  82. package/dist/components/ui/data-table/toolbar/filters/useColumnFilters.d.ts.map +1 -0
  83. package/dist/components/ui/data-table/toolbar/index.d.ts +5 -0
  84. package/dist/components/ui/data-table/toolbar/index.d.ts.map +1 -0
  85. package/dist/components/ui/data-table/types.d.ts +40 -0
  86. package/dist/components/ui/data-table/types.d.ts.map +1 -0
  87. package/dist/components/ui/data-table/useTableController.d.ts +29 -0
  88. package/dist/components/ui/data-table/useTableController.d.ts.map +1 -0
  89. package/dist/components/ui/data-table/utils.d.ts +3 -0
  90. package/dist/components/ui/data-table/utils.d.ts.map +1 -0
  91. package/dist/components/ui/date-range-picker.d.ts +9 -0
  92. package/dist/components/ui/date-range-picker.d.ts.map +1 -0
  93. package/dist/components/ui/dialog.d.ts +16 -0
  94. package/dist/components/ui/dialog.d.ts.map +1 -0
  95. package/dist/components/ui/drawer.d.ts +16 -0
  96. package/dist/components/ui/drawer.d.ts.map +1 -0
  97. package/dist/components/ui/dropdown-menu.d.ts +28 -0
  98. package/dist/components/ui/dropdown-menu.d.ts.map +1 -0
  99. package/dist/components/ui/dropzone/index.d.ts +25 -0
  100. package/dist/components/ui/dropzone/index.d.ts.map +1 -0
  101. package/dist/components/ui/input.d.ts +5 -0
  102. package/dist/components/ui/input.d.ts.map +1 -0
  103. package/dist/components/ui/label.d.ts +5 -0
  104. package/dist/components/ui/label.d.ts.map +1 -0
  105. package/dist/components/ui/page-header/index.d.ts +3 -0
  106. package/dist/components/ui/page-header/index.d.ts.map +1 -0
  107. package/dist/components/ui/page-header/page-header-types.d.ts +44 -0
  108. package/dist/components/ui/page-header/page-header-types.d.ts.map +1 -0
  109. package/dist/components/ui/page-header/page-header.d.ts +5 -0
  110. package/dist/components/ui/page-header/page-header.d.ts.map +1 -0
  111. package/dist/components/ui/popover.d.ts +8 -0
  112. package/dist/components/ui/popover.d.ts.map +1 -0
  113. package/dist/components/ui/progress.d.ts +5 -0
  114. package/dist/components/ui/progress.d.ts.map +1 -0
  115. package/dist/components/ui/radio-group.d.ts +6 -0
  116. package/dist/components/ui/radio-group.d.ts.map +1 -0
  117. package/dist/components/ui/search-input.d.ts +7 -0
  118. package/dist/components/ui/search-input.d.ts.map +1 -0
  119. package/dist/components/ui/select.d.ts +16 -0
  120. package/dist/components/ui/select.d.ts.map +1 -0
  121. package/dist/components/ui/sheet.d.ts +14 -0
  122. package/dist/components/ui/sheet.d.ts.map +1 -0
  123. package/dist/components/ui/skeleton.d.ts +4 -0
  124. package/dist/components/ui/skeleton.d.ts.map +1 -0
  125. package/dist/components/ui/slider.d.ts +15 -0
  126. package/dist/components/ui/slider.d.ts.map +1 -0
  127. package/dist/components/ui/switch.d.ts +5 -0
  128. package/dist/components/ui/switch.d.ts.map +1 -0
  129. package/dist/components/ui/table/Table.d.ts +21 -0
  130. package/dist/components/ui/table/Table.d.ts.map +1 -0
  131. package/dist/components/ui/table/index.d.ts +2 -0
  132. package/dist/components/ui/table/index.d.ts.map +1 -0
  133. package/dist/components/ui/table.d.ts +11 -0
  134. package/dist/components/ui/table.d.ts.map +1 -0
  135. package/dist/components/ui/tabs.d.ts +15 -0
  136. package/dist/components/ui/tabs.d.ts.map +1 -0
  137. package/dist/components/ui/toggle.d.ts +10 -0
  138. package/dist/components/ui/toggle.d.ts.map +1 -0
  139. package/dist/components/ui/tooltip.d.ts +8 -0
  140. package/dist/components/ui/tooltip.d.ts.map +1 -0
  141. package/dist/docs/TAILWIND_SETUP.md +332 -0
  142. package/dist/index.css +536 -0
  143. package/dist/index.d.ts +30 -0
  144. package/dist/index.d.ts.map +1 -0
  145. package/dist/lib/page-header-utils.d.ts +2 -0
  146. package/dist/lib/page-header-utils.d.ts.map +1 -0
  147. package/dist/lib/theme-utils.d.ts +104 -0
  148. package/dist/lib/theme-utils.d.ts.map +1 -0
  149. package/dist/lib/utils.d.ts +3 -0
  150. package/dist/lib/utils.d.ts.map +1 -0
  151. package/dist/main.d.ts +3 -0
  152. package/dist/main.d.ts.map +1 -0
  153. package/dist/mm-react-components.es.js +33709 -26
  154. package/dist/mm-react-components.es.js.map +1 -0
  155. package/dist/mm-react-components.umd.js +71 -1
  156. package/dist/mm-react-components.umd.js.map +1 -0
  157. package/dist/preview/AccordionPreview.d.ts +2 -0
  158. package/dist/preview/AccordionPreview.d.ts.map +1 -0
  159. package/dist/preview/BadgePreview.d.ts +2 -0
  160. package/dist/preview/BadgePreview.d.ts.map +1 -0
  161. package/dist/preview/ButtonPreview.d.ts +2 -0
  162. package/dist/preview/ButtonPreview.d.ts.map +1 -0
  163. package/dist/preview/CalendarPreview.d.ts +2 -0
  164. package/dist/preview/CalendarPreview.d.ts.map +1 -0
  165. package/dist/preview/CheckboxPreview.d.ts +2 -0
  166. package/dist/preview/CheckboxPreview.d.ts.map +1 -0
  167. package/dist/preview/CollapsiblePreview.d.ts +2 -0
  168. package/dist/preview/CollapsiblePreview.d.ts.map +1 -0
  169. package/dist/preview/DataTablePreview.d.ts +9 -0
  170. package/dist/preview/DataTablePreview.d.ts.map +1 -0
  171. package/dist/preview/DateRangePickerPreview.d.ts +2 -0
  172. package/dist/preview/DateRangePickerPreview.d.ts.map +1 -0
  173. package/dist/preview/DialogPreview.d.ts +2 -0
  174. package/dist/preview/DialogPreview.d.ts.map +1 -0
  175. package/dist/preview/DrawerPreview.d.ts +2 -0
  176. package/dist/preview/DrawerPreview.d.ts.map +1 -0
  177. package/dist/preview/DropdownMenuPreview.d.ts +2 -0
  178. package/dist/preview/DropdownMenuPreview.d.ts.map +1 -0
  179. package/dist/preview/DropzonePreview.d.ts +2 -0
  180. package/dist/preview/DropzonePreview.d.ts.map +1 -0
  181. package/dist/preview/InputPreview.d.ts +2 -0
  182. package/dist/preview/InputPreview.d.ts.map +1 -0
  183. package/dist/preview/LabelPreview.d.ts +2 -0
  184. package/dist/preview/LabelPreview.d.ts.map +1 -0
  185. package/dist/preview/PopoverPreview.d.ts +2 -0
  186. package/dist/preview/PopoverPreview.d.ts.map +1 -0
  187. package/dist/preview/ProgressPreview.d.ts +2 -0
  188. package/dist/preview/ProgressPreview.d.ts.map +1 -0
  189. package/dist/preview/RadioGroupPreview.d.ts +2 -0
  190. package/dist/preview/RadioGroupPreview.d.ts.map +1 -0
  191. package/dist/preview/SelectPreview.d.ts +2 -0
  192. package/dist/preview/SelectPreview.d.ts.map +1 -0
  193. package/dist/preview/SheetPreview.d.ts +2 -0
  194. package/dist/preview/SheetPreview.d.ts.map +1 -0
  195. package/dist/preview/SkeletonPreview.d.ts +2 -0
  196. package/dist/preview/SkeletonPreview.d.ts.map +1 -0
  197. package/dist/preview/SliderPreview.d.ts +2 -0
  198. package/dist/preview/SliderPreview.d.ts.map +1 -0
  199. package/dist/preview/SwitchPreview.d.ts +2 -0
  200. package/dist/preview/SwitchPreview.d.ts.map +1 -0
  201. package/dist/preview/TablePreview.d.ts +2 -0
  202. package/dist/preview/TablePreview.d.ts.map +1 -0
  203. package/dist/preview/TabsPreview.d.ts +2 -0
  204. package/dist/preview/TabsPreview.d.ts.map +1 -0
  205. package/dist/preview/TogglePreview.d.ts +2 -0
  206. package/dist/preview/TogglePreview.d.ts.map +1 -0
  207. package/dist/preview/TooltipPreview.d.ts +2 -0
  208. package/dist/preview/TooltipPreview.d.ts.map +1 -0
  209. package/dist/preview/data-table/data-table-preview_column-content.d.ts +18 -0
  210. package/dist/preview/data-table/data-table-preview_column-content.d.ts.map +1 -0
  211. package/dist/preview/page-header/PageHeaderPreview.d.ts +3 -0
  212. package/dist/preview/page-header/PageHeaderPreview.d.ts.map +1 -0
  213. package/dist/tailwind.config.export.js +153 -0
  214. package/dist/themes/carbide.css +1257 -0
  215. package/docs/TAILWIND_SETUP.md +332 -0
  216. package/package.json +119 -15
  217. package/scripts/README.md +171 -0
  218. package/scripts/chakra-to-shadcn-migrator/README.md +107 -0
  219. package/scripts/chakra-to-shadcn-migrator/bin/chakra-to-shadcn.js +1135 -0
  220. package/src/index.css +536 -0
  221. package/src/themes/carbide.css +1257 -0
  222. package/tailwind.config.export.js +153 -0
@@ -0,0 +1,332 @@
1
+ # Tailwind CSS Setup for MM React Components
2
+
3
+ This guide shows how to configure Tailwind CSS in your consuming application to get the same styling as the component preview interface.
4
+
5
+ ## Quick Setup
6
+
7
+ ### 1. Install Dependencies
8
+
9
+ ```bash
10
+ npm install @machinemetrics/mm-react-components tailwindcss postcss autoprefixer
11
+ ```
12
+
13
+ ### 2. Copy Tailwind Configuration
14
+
15
+ Copy the `tailwind.config.export.js` file to your project and rename it to `tailwind.config.js`:
16
+
17
+ ```bash
18
+ cp node_modules/@machinemetrics/mm-react-components/tailwind.config.export.js tailwind.config.js
19
+ ```
20
+
21
+ ### 3. Import Theme CSS
22
+
23
+ Add the theme imports to your main CSS file:
24
+
25
+ ```css
26
+ /* Import base theme */
27
+ @import '@machinemetrics/mm-react-components/themes/base';
28
+
29
+ /* Import Carbide theme (optional) */
30
+ @import '@machinemetrics/mm-react-components/themes/carbide';
31
+ ```
32
+
33
+ ### 4. Configure PostCSS
34
+
35
+ Create or update your `postcss.config.js`:
36
+
37
+ ```javascript
38
+ export default {
39
+ plugins: {
40
+ tailwindcss: {},
41
+ autoprefixer: {},
42
+ },
43
+ };
44
+ ```
45
+
46
+ ## Complete Setup Example
47
+
48
+ ### package.json
49
+
50
+ ```json
51
+ {
52
+ "dependencies": {
53
+ "@machinemetrics/mm-react-components": "^0.2.1",
54
+ "tailwindcss": "^3.4.17",
55
+ "postcss": "^8.4.35",
56
+ "autoprefixer": "^10.4.17"
57
+ }
58
+ }
59
+ ```
60
+
61
+ ### tailwind.config.js
62
+
63
+ ```javascript
64
+ /** @type {import('tailwindcss').Config} */
65
+ export default {
66
+ content: [
67
+ './src/**/*.{js,ts,jsx,tsx}',
68
+ './node_modules/@machinemetrics/mm-react-components/dist/**/*.{js,ts,jsx,tsx}',
69
+ ],
70
+ theme: {
71
+ extend: {
72
+ colors: {
73
+ background: 'var(--background)',
74
+ foreground: 'var(--foreground)',
75
+ card: 'var(--card)',
76
+ 'card-foreground': 'var(--card-foreground)',
77
+ popover: 'var(--popover)',
78
+ 'popover-foreground': 'var(--popover-foreground)',
79
+ primary: 'var(--primary)',
80
+ 'primary-foreground': 'var(--primary-foreground)',
81
+ secondary: 'var(--secondary)',
82
+ 'secondary-foreground': 'var(--secondary-foreground)',
83
+ muted: 'var(--muted)',
84
+ 'muted-foreground': 'var(--muted-foreground)',
85
+ accent: 'var(--accent)',
86
+ 'accent-foreground': 'var(--accent-foreground)',
87
+ destructive: 'var(--destructive)',
88
+ 'destructive-foreground': 'var(--destructive-foreground)',
89
+ border: 'var(--border)',
90
+ input: 'var(--input)',
91
+ 'bg-input': 'var(--bg-input)',
92
+ 'border-input': 'var(--border-input)',
93
+ ring: 'var(--ring)',
94
+ // Chart colors for data visualization
95
+ 'chart-1': 'var(--chart-1)',
96
+ 'chart-2': 'var(--chart-2)',
97
+ 'chart-3': 'var(--chart-3)',
98
+ 'chart-4': 'var(--chart-4)',
99
+ 'chart-5': 'var(--chart-5)',
100
+ // Sidebar colors
101
+ sidebar: 'var(--sidebar)',
102
+ 'sidebar-foreground': 'var(--sidebar-foreground)',
103
+ 'sidebar-primary': 'var(--sidebar-primary)',
104
+ 'sidebar-primary-foreground': 'var(--sidebar-primary-foreground)',
105
+ 'sidebar-accent': 'var(--sidebar-accent)',
106
+ 'sidebar-accent-foreground': 'var(--sidebar-accent-foreground)',
107
+ 'sidebar-border': 'var(--sidebar-border)',
108
+ 'sidebar-ring': 'var(--sidebar-ring)',
109
+ },
110
+ borderRadius: {
111
+ sm: 'var(--radius-sm)',
112
+ md: 'var(--radius-md)',
113
+ lg: 'var(--radius-lg)',
114
+ xl: 'var(--radius-xl)',
115
+ },
116
+ fontFamily: {
117
+ sans: [
118
+ 'Noto Sans',
119
+ 'Inter',
120
+ 'ui-sans-serif',
121
+ 'system-ui',
122
+ '-apple-system',
123
+ 'BlinkMacSystemFont',
124
+ 'Segoe UI',
125
+ 'Roboto',
126
+ 'Helvetica Neue',
127
+ 'Arial',
128
+ 'sans-serif',
129
+ 'Apple Color Emoji',
130
+ 'Segoe UI Emoji',
131
+ 'Segoe UI Symbol',
132
+ 'Noto Color Emoji',
133
+ ],
134
+ mono: [
135
+ 'Inconsolata',
136
+ 'ui-monospace',
137
+ 'SFMono-Regular',
138
+ 'Menlo',
139
+ 'Monaco',
140
+ 'Consolas',
141
+ 'Liberation Mono',
142
+ 'Courier New',
143
+ 'monospace',
144
+ ],
145
+ },
146
+ fontWeight: {
147
+ normal: '400',
148
+ medium: '500',
149
+ semibold: '600',
150
+ bold: 'var(--font-weight-bold)',
151
+ },
152
+ spacing: {
153
+ sidebar: '16rem', // 256px for sidebar width
154
+ },
155
+ animation: {
156
+ 'fade-in': 'fadeIn 0.2s ease-in-out',
157
+ 'slide-in': 'slideIn 0.3s ease-out',
158
+ },
159
+ keyframes: {
160
+ fadeIn: {
161
+ '0%': { opacity: '0' },
162
+ '100%': { opacity: '1' },
163
+ },
164
+ slideIn: {
165
+ '0%': { transform: 'translateX(-10px)', opacity: '0' },
166
+ '100%': { transform: 'translateX(0)', opacity: '1' },
167
+ },
168
+ },
169
+ },
170
+ },
171
+ plugins: [
172
+ function ({ addUtilities, theme }) {
173
+ const newUtilities = {
174
+ '.preview-sidebar': {
175
+ width: '16rem',
176
+ minHeight: '100vh',
177
+ backgroundColor: 'var(--muted)',
178
+ borderRight: '1px solid var(--border)',
179
+ padding: '1rem',
180
+ },
181
+ '.preview-main': {
182
+ flex: '1',
183
+ minWidth: '0',
184
+ padding: '2rem',
185
+ },
186
+ '.preview-card': {
187
+ backgroundColor: 'var(--card)',
188
+ border: '1px solid var(--border)',
189
+ borderRadius: 'var(--radius-lg)',
190
+ padding: '1.5rem',
191
+ },
192
+ '.preview-nav-item': {
193
+ width: '100%',
194
+ textAlign: 'left',
195
+ padding: '0.75rem',
196
+ borderRadius: '0.375rem',
197
+ fontSize: '0.875rem',
198
+ fontWeight: '500',
199
+ transition: 'colors 0.2s ease-in-out',
200
+ '&:hover': {
201
+ backgroundColor: 'var(--muted)',
202
+ color: 'var(--foreground)',
203
+ },
204
+ '&.active': {
205
+ backgroundColor: 'var(--primary)',
206
+ color: 'var(--primary-foreground)',
207
+ },
208
+ },
209
+ };
210
+ addUtilities(newUtilities);
211
+ },
212
+ ],
213
+ };
214
+ ```
215
+
216
+ ### src/index.css
217
+
218
+ ```css
219
+ @import '@machinemetrics/mm-react-components/themes/base';
220
+ @import '@machinemetrics/mm-react-components/themes/carbide';
221
+ @import 'tailwindcss';
222
+ ```
223
+
224
+ ### postcss.config.js
225
+
226
+ ```javascript
227
+ export default {
228
+ plugins: {
229
+ tailwindcss: {},
230
+ autoprefixer: {},
231
+ },
232
+ };
233
+ ```
234
+
235
+ ## Component Preview Interface
236
+
237
+ To recreate the component preview interface from the library, use these utility classes:
238
+
239
+ ```tsx
240
+ // Main layout container
241
+ <div className="min-h-screen bg-background flex">
242
+ {/* Left Navigation Sidebar */}
243
+ <div className="preview-sidebar">
244
+ <h1 className="text-xl font-bold text-foreground mb-6">MM Components</h1>
245
+
246
+ {/* Theme Toggles */}
247
+ <div className="mb-6 space-y-3">
248
+ {/* Add your theme toggle components here */}
249
+ </div>
250
+
251
+ {/* Component Navigation */}
252
+ <nav className="space-y-2">
253
+ <button className="preview-nav-item active">Button</button>
254
+ <button className="preview-nav-item">Input</button>
255
+ {/* Add more component navigation items */}
256
+ </nav>
257
+ </div>
258
+
259
+ {/* Main Preview Pane */}
260
+ <div className="preview-main">
261
+ <div>
262
+ <div className="mb-6">
263
+ <h2 className="text-2xl font-semibold text-foreground capitalize">
264
+ Component Name
265
+ </h2>
266
+ <p className="text-muted-foreground mt-1">
267
+ Preview and test the component
268
+ </p>
269
+ </div>
270
+ <div className="preview-card">{/* Your component preview content */}</div>
271
+ </div>
272
+ </div>
273
+ </div>
274
+ ```
275
+
276
+ ## Theme Customization
277
+
278
+ ### Using Base Theme Only
279
+
280
+ ```css
281
+ @import '@machinemetrics/mm-react-components/themes/base';
282
+ ```
283
+
284
+ ### Using Carbide Theme
285
+
286
+ ```css
287
+ @import '@machinemetrics/mm-react-components/themes/base';
288
+ @import '@machinemetrics/mm-react-components/themes/carbide';
289
+ ```
290
+
291
+ ### Custom Theme Overrides
292
+
293
+ You can override theme variables in your CSS:
294
+
295
+ ```css
296
+ :root {
297
+ --primary: #your-custom-color;
298
+ --background: #your-custom-background;
299
+ /* Override other variables as needed */
300
+ }
301
+ ```
302
+
303
+ ## Available Utility Classes
304
+
305
+ The exported configuration includes these custom utility classes:
306
+
307
+ - `.preview-sidebar` - Sidebar styling
308
+ - `.preview-main` - Main content area styling
309
+ - `.preview-card` - Component preview card styling
310
+ - `.preview-nav-item` - Navigation item styling
311
+
312
+ ## Color System
313
+
314
+ The configuration includes a comprehensive color system:
315
+
316
+ - **Semantic Colors**: `background`, `foreground`, `primary`, `secondary`, etc.
317
+ - **Chart Colors**: `chart-1` through `chart-5` for data visualization
318
+ - **Sidebar Colors**: Complete sidebar color system
319
+ - **Input Colors**: Specialized input styling colors
320
+
321
+ ## Typography
322
+
323
+ - **Sans Font**: Noto Sans (primary), Inter, system fonts
324
+ - **Mono Font**: Inconsolata (primary), system monospace fonts
325
+ - **Font Weights**: Normal (400), Medium (500), Semibold (600), Bold (700)
326
+
327
+ ## Animation
328
+
329
+ - **Fade In**: `animate-fade-in`
330
+ - **Slide In**: `animate-slide-in`
331
+
332
+ This configuration ensures your consuming application will have the same professional styling as the component preview interface.