@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.
- package/README.md +67 -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
|
-
**
|
|
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
|
[](https://www.npmjs.com/package/@geomak/ui)
|
|
10
10
|
[](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
|
-
|
|
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.
|
|
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",
|