@geomak/ui 7.17.1 → 7.18.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.
Files changed (2) hide show
  1. package/README.md +67 -2
  2. package/package.json +3 -1
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  # @geomak/ui · Oxygen Design System
6
6
 
7
- **60+ production-grade React components for enterprise apps** — dashboards, CRMs, internal tools, and landing pages. Token-driven, accessible, light/dark first-class, and properly tree-shakeable.
7
+ **100+ production-grade React components for enterprise apps** — dashboards, CRMs, internal tools, and landing pages. Token-driven, accessible, light/dark first-class, and properly tree-shakeable.
8
8
 
9
9
  [![npm version](https://img.shields.io/npm/v/@geomak/ui?color=0466c8&label=npm)](https://www.npmjs.com/package/@geomak/ui)
10
10
  [![types](https://img.shields.io/npm/types/@geomak/ui?color=0466c8)](https://www.npmjs.com/package/@geomak/ui)
@@ -64,7 +64,7 @@ import { ChevronDown, Search, createIcon } from '@geomak/ui/icons'
64
64
 
65
65
  ## Components
66
66
 
67
- 60+ components across these groups — all with **live controls and a written guide** in [Storybook](https://oxygenui.com).
67
+ 100+ components across these groups — all with **live controls and a written guide** in [Storybook](https://oxygenui.com).
68
68
 
69
69
  | Group | Components |
70
70
  |---|---|
@@ -135,6 +135,71 @@ The standard **gray / slate / zinc** ramps and **black** stay available alongsid
135
135
 
136
136
  ---
137
137
 
138
+ ## AI toolchain (Claude Code)
139
+
140
+ OxygenUI ships a built-in MCP server and a set of Claude Code skills and commands that let AI assistants look up component APIs, search by use-case, and scaffold new components — all grounded in the real MDX documentation.
141
+
142
+ ### MCP server
143
+
144
+ The server is deployed alongside Storybook on Netlify as a Netlify Function at `/mcp`. It exposes four tools:
145
+
146
+ | Tool | What it does |
147
+ |---|---|
148
+ | `list_components` | Browse all 100+ components with slug, category, and description |
149
+ | `get_component` | Fetch the full props API and usage examples for one component by slug |
150
+ | `find_component` | Keyword search across names, categories, and descriptions |
151
+ | `get_token` | Look up CSS custom properties by name or category prefix |
152
+
153
+ **Connect it:**
154
+
155
+ ```jsonc
156
+ // .mcp.json (already in the repo — update the URL after first deploy)
157
+ {
158
+ "mcpServers": {
159
+ "oxygen-ui": {
160
+ "type": "http",
161
+ "url": "https://your-site.netlify.app/mcp"
162
+ },
163
+ "oxygen-ui-local": {
164
+ "type": "http",
165
+ "url": "http://localhost:8888/mcp"
166
+ }
167
+ }
168
+ }
169
+ ```
170
+
171
+ Or add it from the CLI: `claude mcp add oxygen-ui --transport http https://your-site.netlify.app/mcp`
172
+
173
+ ### Claude Code commands
174
+
175
+ Four slash commands are registered in `.claude/commands/`:
176
+
177
+ | Command | Usage |
178
+ |---|---|
179
+ | `/ui-lookup <name>` | Fetch the full docs for a component — e.g. `/ui-lookup wizard` |
180
+ | `/ui-find <query>` | Search by use-case — e.g. `/ui-find virtualized table` |
181
+ | `/ui-scaffold <name>` | Scaffold a new component with source + story + MDX guide |
182
+ | `/ui-story <name>` | Add story coverage for an existing component |
183
+
184
+ ### Context skill
185
+
186
+ The `/oxygen-ui` skill loads the full design system context into any Claude Code session — import patterns, token usage, Tailwind utilities, form API, and repository conventions. Invoke it at the start of any session where you plan to build against `@geomak/ui`.
187
+
188
+ ### Local development with the MCP server
189
+
190
+ ```bash
191
+ npm install -g netlify-cli # one-time global install
192
+ yarn mcp:dev # generates manifest + starts netlify dev on port 8888
193
+ ```
194
+
195
+ The function is then available at `http://localhost:8888/mcp`. Claude Code picks up the `oxygen-ui-local` entry from `.mcp.json` automatically when you open the project.
196
+
197
+ ### How the manifest is built
198
+
199
+ At build time, `scripts/generate-ai-manifest.mjs` scans all 101 MDX guide files in `src/docs/` and the co-located MDX files in `src/components/`, strips Storybook boilerplate, and emits `netlify/functions/ai-manifest.json`. The Netlify Function bundles this JSON via esbuild — no database, no runtime file I/O, no cold-start penalty.
200
+
201
+ ---
202
+
138
203
  ## Development
139
204
 
140
205
  ```bash
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geomak/ui",
3
- "version": "7.17.1",
3
+ "version": "7.18.1",
4
4
  "description": "Oxygen Design System — reusable UI primitives built with Radix UI behaviours and Tailwind CSS styling",
5
5
  "author": "G-MAKROGLOU",
6
6
  "license": "MIT",
@@ -40,6 +40,8 @@
40
40
  "dev": "tsup --watch",
41
41
  "storybook": "storybook dev -p 6006",
42
42
  "build-storybook": "storybook build",
43
+ "generate-manifest": "node scripts/generate-ai-manifest.mjs",
44
+ "mcp:dev": "node scripts/generate-ai-manifest.mjs && netlify dev",
43
45
  "typecheck": "tsc --noEmit",
44
46
  "lint": "eslint src --max-warnings 0",
45
47
  "lint:fix": "eslint src --fix",