@machinemetrics/mm-react-components 1.0.0-rc.0 → 1.0.0-rc.1

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.
@@ -96,14 +96,15 @@ npx create-next-app@latest my-app --typescript
96
96
  cd my-app
97
97
  ```
98
98
 
99
- **Required dependencies**:
99
+ **Dependencies** (zero-config: only the library):
100
100
 
101
101
  ```bash
102
102
  npm install @machinemetrics/mm-react-components
103
- npm install class-variance-authority clsx tailwind-merge @radix-ui/react-slot lucide-react
104
103
  ```
105
104
 
106
- **Next.js configuration**:
105
+ Add `@import '@machinemetrics/mm-react-components/styles';` to your CSS and `className="carbide"` to the root. No Tailwind or PostCSS required. If you use Next.js with Tailwind already, the library still works with just the styles import.
106
+
107
+ **Next.js configuration** (for transpilation):
107
108
 
108
109
  ```javascript
109
110
  // next.config.js
@@ -124,15 +125,15 @@ npx create-react-app my-app --template typescript
124
125
  cd my-app
125
126
  ```
126
127
 
127
- **Required dependencies**:
128
+ **Dependencies** (zero-config: only the library):
128
129
 
129
130
  ```bash
130
131
  npm install @machinemetrics/mm-react-components
131
- npm install class-variance-authority clsx tailwind-merge @radix-ui/react-slot lucide-react
132
- npm install -D tailwindcss autoprefixer postcss
133
132
  ```
134
133
 
135
- **CRA configuration**:
134
+ Add `/styles` import and `carbide` class. No Tailwind/PostCSS required unless you already use them.
135
+
136
+ **CRA configuration** (only if you use Tailwind/PostCSS in CRA):
136
137
 
137
138
  ```javascript
138
139
  // craco.config.js (if using CRACO)
@@ -183,9 +184,7 @@ function CustomButton({ className, ...props }) {
183
184
  ### Theme Application
184
185
 
185
186
  ```tsx
186
- // App.tsx
187
- import '@machinemetrics/mm-react-components/themes/carbide';
188
-
187
+ // App.tsx - ensure your CSS has: @import '@machinemetrics/mm-react-components/styles';
189
188
  function App() {
190
189
  return (
191
190
  <div className="carbide">
@@ -202,8 +201,8 @@ function App() {
202
201
  | Error | Cause | Solution |
203
202
  | ----------------------------------------------------------------------- | ----------------------- | ------------------------------------------------- |
204
203
  | `Module not found: Can't resolve '@machinemetrics/mm-react-components'` | Package not installed | `npm install @machinemetrics/mm-react-components` |
205
- | `Cannot find module 'tailwindcss'` | Tailwind not installed | `npm install -D tailwindcss` |
206
- | `PostCSS plugin tailwindcss requires Tailwind CSS` | Tailwind config missing | Create `tailwind.config.js` |
204
+ | `Cannot find module 'tailwindcss'` | Only if not using /styles | Use `@import '.../styles'` (zero-config) or install Tailwind |
205
+ | `PostCSS plugin tailwindcss requires Tailwind CSS` | Only if using Tailwind | Use `/styles` for zero-config, or add `tailwind.config.js` |
207
206
  | `Cannot resolve dependency 'lucide-react'` | Icons package missing | `npm install lucide-react` |
208
207
  | `Cannot find module 'clsx'` | Utility missing | `npm install clsx` |
209
208
 
@@ -230,19 +229,19 @@ function App() {
230
229
  ### 1. Dependency Check
231
230
 
232
231
  ```bash
233
- # Check if all dependencies are installed
232
+ # Check if the library is installed (zero-config: only this + React needed)
234
233
  npm list @machinemetrics/mm-react-components
235
- npm list tailwindcss
236
- npm list lucide-react
234
+ # tailwindcss / lucide-react only if you use them separately
237
235
  ```
238
236
 
239
- ### 2. Configuration Check
237
+ ### 2. Configuration Check (zero-config)
240
238
 
241
239
  ```bash
242
- # Verify configuration files exist
243
- ls -la tailwind.config.js
244
- ls -la postcss.config.js
245
- ls -la src/index.css
240
+ # Verify CSS imports the library styles
241
+ grep -r "mm-react-components/styles" src/
242
+
243
+ # Root element should have className="carbide"
244
+ # No tailwind.config.js or postcss.config.js required when using /styles
246
245
  ```
247
246
 
248
247
  ### 3. Import Test
package/dist/README.md CHANGED
@@ -44,7 +44,7 @@ npm install @machinemetrics/mm-react-components
44
44
 
45
45
  **Automated Tools:**
46
46
 
47
- - ✅ Init script: `npx @machinemetrics/mm-react-components init`
47
+ - ✅ Init script: `npx @machinemetrics/mm-react-components mm-init`
48
48
  - ✅ Migration script: `npx @machinemetrics/mm-react-components chakra-to-shadcn`
49
49
  - ✅ 98% automation rate for Chakra UI conversion
50
50
  - ✅ Zero-config setup option (no build tools needed!)
@@ -55,23 +55,18 @@ npm install @machinemetrics/mm-react-components
55
55
 
56
56
  ### 🚀 Automated Setup (Recommended)
57
57
 
58
- The fastest way to get started:
58
+ The fastest way to get started (from your React project root):
59
59
 
60
60
  ```bash
61
- # Install the package
62
- npm install @machinemetrics/mm-react-components
63
-
64
- # Run the automated setup
65
- npx @machinemetrics/mm-react-components/setup
61
+ npx @machinemetrics/mm-react-components mm-init
66
62
  ```
67
63
 
68
64
  This will automatically:
69
65
 
70
- - ✅ Copy Tailwind configuration
71
- - ✅ Create PostCSS configuration
72
- - ✅ Set up the complete theme
73
- - ✅ Create an example component
74
- - ✅ Generate all necessary files
66
+ - ✅ Install the component library
67
+ - ✅ Add pre-compiled CSS import to your `index.css`
68
+ - ✅ Create example components
69
+ - ✅ Optionally install the Carbide AI skill and offer Chakra UI migration if detected
75
70
 
76
71
  ### 📋 Manual Setup
77
72
 
@@ -89,19 +84,7 @@ npm install @machinemetrics/mm-react-components
89
84
  npm install -D tailwindcss postcss autoprefixer
90
85
  ```
91
86
 
92
- #### 2. (Optional) Configure Tailwind CSS
93
-
94
- > 💡 Skip this step if using `/styles` - Tailwind configuration is not needed!
95
-
96
- **Only if using `/themes/carbide`:**
97
-
98
- ```bash
99
- cp node_modules/@machinemetrics/mm-react-components/tailwind.config.export.js tailwind.config.js
100
- ```
101
-
102
- Note: The exported config is the main config (no preview-only utilities). The preview app in this repo uses a separate `tailwind.preview.config.js` that imports the main config and adds preview utilities.
103
-
104
- #### 3. Import Styles
87
+ #### 2. Import Styles
105
88
 
106
89
  Import the complete styles including Tailwind CSS, base styles, and Carbide theme:
107
90
 
@@ -120,7 +103,7 @@ document.documentElement.classList.add('carbide');
120
103
  - ✅ Dark mode support
121
104
  - ✅ Animations and utilities
122
105
 
123
- #### 4. Use Components
106
+ #### 3. Use Components
124
107
 
125
108
  ```tsx
126
109
  import { Button, Input } from '@machinemetrics/mm-react-components';
@@ -146,7 +129,6 @@ function App() {
146
129
  **For Developers:**
147
130
 
148
131
  - [Getting Started Guide](./docs/GETTING_STARTED.md) - Complete setup guide
149
- - [Tailwind Setup Guide](./docs/TAILWIND_SETUP.md) - Detailed configuration
150
132
  - [Chakra Migration Guide](./docs/CHAKRA_MIGRATION_GUIDE.md) - Detailed migration reference
151
133
  - [Component Mapping Summary](./docs/COMPONENT_MAPPING_SUMMARY.md) - All 83 component mappings
152
134
 
@@ -1 +1 @@
1
- {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,eAAe;;gDAWnB,CAAC;AAIH,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"button-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button-group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,kCAAkC,CAAC;AAG1C,QAAA,MAAM,eAAe;;gDAKnB,CAAC;AAIH,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAGlC,QAAA,MAAM,IAAI,kKAOR,CAAC;AAIH,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,eAAe,EACf,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAGlC,QAAA,MAAM,IAAI,kKAKR,CAAC;AAIH,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-preview.d.ts","sourceRoot":"","sources":["../../../src/components/ui/code-preview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,uBAAuB,MAAM,6BAA6B,CAAC;AA6ElE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,WAAW,yFAoQhB,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"code-preview.d.ts","sourceRoot":"","sources":["../../../src/components/ui/code-preview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,uBAAuB,MAAM,6BAA6B,CAAC;AA6ElE,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACjE;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;GAcG;AACH,QAAA,MAAM,WAAW,yFAiQhB,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"hover-card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/hover-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAG7E,QAAA,MAAM,gBAAgB,sLAWpB,CAAC;AAIH,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"hover-card.d.ts","sourceRoot":"","sources":["../../../src/components/ui/hover-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAG7E,QAAA,MAAM,gBAAgB,sLAOpB,CAAC;AAIH,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/menubar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAGrC,QAAA,MAAM,OAAO,0KAWX,CAAC;AAIH,OAAO,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"menubar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/menubar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAGrC,QAAA,MAAM,OAAO,0KAKX,CAAC;AAIH,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -24,6 +24,10 @@ description: Generate UIs and widgets with Carbide and MachineMetrics React Comp
24
24
  - Widgets must be fully responsive and respect content containment (no overflow).
25
25
  - Only use data explicitly provided; never hallucinate or use placeholder data. Adapt to available data without asking for more.
26
26
 
27
+ ## Setup, init, and migration
28
+
29
+ For **project setup**, **initialization** (`mm-init`), **Chakra UI migration**, or the **full documentation index**, use the package’s **agent-docs** (shipped with the package). When the package is installed: `node_modules/@machinemetrics/mm-react-components/agent-docs/`. Start with **agent-documentation-reference.md** for the index; use **ai-agent-init-guide.md** for setup and **ai-agent-guide.md** (and chakra-migration-*) for migration.
30
+
27
31
  ## Version check while using
28
32
 
29
33
  When using this skill, if you have terminal/tool access, you may run `npx @machinemetrics/mm-react-components mm-install-skill` once (e.g. at the start of a UI task or when the user asks about updates) to ensure the installed skill matches the package version; the command reports "Already up to date" or updates the skill. If the user is not on Cursor, they can pass `--target=copilot`, `--target=claude`, or `--target=gemini` to install for VS Code/Copilot, Claude Code, or Gemini CLI. Do not run it on every message—once per session or when relevant is enough.
@@ -7,67 +7,50 @@ This guide will help you get up and running with MM React Components in your app
7
7
  The fastest way to get started is with our automated setup:
8
8
 
9
9
  ```bash
10
- # Install the package
11
- npm install @machinemetrics/mm-react-components
12
-
13
- # Run the automated setup
14
- npx @machinemetrics/mm-react-components/setup
10
+ # From your React project root, run:
11
+ npx @machinemetrics/mm-react-components mm-init
15
12
  ```
16
13
 
17
14
  This will:
18
15
 
19
- - ✅ Copy the Tailwind configuration
20
- - ✅ Create PostCSS configuration
21
- - ✅ Set up the complete theme
22
- - ✅ Create an example component
23
- - ✅ Generate all necessary files
16
+ - ✅ Install the component library
17
+ - ✅ Add pre-compiled CSS import to your `index.css`
18
+ - ✅ Create example components
19
+ - ✅ Optionally install the Carbide AI skill and offer Chakra UI migration if detected
24
20
 
25
21
  ## 📋 Manual Setup
26
22
 
27
- If you prefer to set up manually:
23
+ If you prefer to set up manually (no Tailwind or PostCSS required):
28
24
 
29
- ### 1. Install Dependencies
25
+ ### 1. Install the library
30
26
 
31
27
  ```bash
32
- npm install @machinemetrics/mm-react-components tailwindcss postcss autoprefixer
28
+ npm install @machinemetrics/mm-react-components
33
29
  ```
34
30
 
35
- ### 2. Configure Tailwind CSS
31
+ ### 2. Import styles
36
32
 
37
- ```bash
38
- cp node_modules/@machinemetrics/mm-react-components/tailwind.config.export.js tailwind.config.js
39
- ```
40
-
41
- ### 3. Create PostCSS Configuration
42
-
43
- ```javascript
44
- // postcss.config.js
45
- export default {
46
- plugins: {
47
- tailwindcss: {},
48
- autoprefixer: {},
49
- },
50
- };
51
- ```
52
-
53
- ### 4. Import Styles
33
+ Add to your main CSS file (e.g. `src/index.css`):
54
34
 
55
35
  ```css
56
- /* src/index.css or your main CSS file */
57
36
  @import '@machinemetrics/mm-react-components/styles';
58
37
  ```
59
38
 
60
- **What's included (118 KB, 18 KB gzipped):**
39
+ ### 3. Activate the Carbide theme
40
+
41
+ Add the `carbide` class to your root element (e.g. in `index.html` or your root component):
61
42
 
62
- - ✅ Tailwind CSS utilities (fully compiled for all component classes)
63
- - ✅ Carbide theme variables and component overrides
64
- - All component styles including focus states, rings, borders
65
- - ✅ Dark mode support
66
- - ✅ Custom animations
43
+ ```html
44
+ <div class="carbide">
45
+ <!-- your app -->
46
+ </div>
47
+ ```
67
48
 
68
- **Note:** The `/styles` export maps to `dist/lib/mm-react-components.css` in the package.
49
+ Or in JS: `document.documentElement.classList.add('carbide');`
69
50
 
70
- ### 5. Use Components
51
+ **What's included in `/styles` (118 KB, 18 KB gzipped):** Tailwind utilities (compiled), Carbide theme, component styles, dark mode, animations. No Tailwind or PostCSS required.
52
+
53
+ ### 4. Use components
71
54
 
72
55
  ```tsx
73
56
  import { Button, Input, Badge } from '@machinemetrics/mm-react-components';
@@ -182,12 +165,8 @@ import {
182
165
  // CSS imports
183
166
  import '@machinemetrics/mm-react-components/styles';
184
167
 
185
- // Configuration
186
- import tailwindConfig from '@machinemetrics/mm-react-components/tailwind.config';
187
-
188
168
  // Documentation
189
169
  import '@machinemetrics/mm-react-components/README';
190
- import '@machinemetrics/mm-react-components/docs/tailwind-setup';
191
170
  ```
192
171
 
193
172
  ## 🎯 Common Use Cases
@@ -276,7 +255,6 @@ function MachineForm() {
276
255
  ## 📚 Additional Resources
277
256
 
278
257
  - [Complete API Reference](./API.md)
279
- - [Tailwind Setup Guide](./TAILWIND_SETUP.md)
280
258
  - [Component Examples](./EXAMPLES.md)
281
259
  - [Theme Customization](./THEMES.md)
282
260