@idealyst/mcp-server 1.2.16 → 1.2.18
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/dist/data/components/Button.d.ts.map +1 -1
- package/dist/data/components/Button.js +14 -5
- package/dist/data/components/Button.js.map +1 -1
- package/dist/data/components/Dialog.js +1 -1
- package/dist/data/components/Progress.js +4 -4
- package/dist/data/components/RadioButton.js +1 -1
- package/dist/data/components/Select.js +1 -1
- package/dist/data/framework-guides.d.ts.map +1 -1
- package/dist/data/framework-guides.js +31 -19
- package/dist/data/framework-guides.js.map +1 -1
- package/dist/data/navigation-guides.d.ts.map +1 -1
- package/dist/data/navigation-guides.js +115 -48
- package/dist/data/navigation-guides.js.map +1 -1
- package/dist/data/packages.d.ts +39 -0
- package/dist/data/packages.d.ts.map +1 -0
- package/dist/data/packages.js +550 -0
- package/dist/data/packages.js.map +1 -0
- package/dist/data/storage-guides.d.ts +2 -0
- package/dist/data/storage-guides.d.ts.map +1 -0
- package/dist/data/storage-guides.js +418 -0
- package/dist/data/storage-guides.js.map +1 -0
- package/dist/index.js +314 -2
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
|
@@ -0,0 +1,550 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Idealyst Framework Package Registry
|
|
3
|
+
* Central metadata for all @idealyst packages
|
|
4
|
+
*/
|
|
5
|
+
export const packages = {
|
|
6
|
+
components: {
|
|
7
|
+
name: "Components",
|
|
8
|
+
npmName: "@idealyst/components",
|
|
9
|
+
description: "Cross-platform React UI components for web and React Native. Includes buttons, cards, inputs, dialogs, and 30+ more components with consistent styling.",
|
|
10
|
+
category: "core",
|
|
11
|
+
platforms: ["web", "native"],
|
|
12
|
+
documentationStatus: "full",
|
|
13
|
+
installation: "yarn add @idealyst/components @idealyst/theme",
|
|
14
|
+
peerDependencies: ["@idealyst/theme", "react-native-unistyles"],
|
|
15
|
+
features: [
|
|
16
|
+
"36+ production-ready components",
|
|
17
|
+
"Consistent API across web and native",
|
|
18
|
+
"Theme-aware with automatic dark mode",
|
|
19
|
+
"Accessible by default",
|
|
20
|
+
"TypeScript-first with full type definitions",
|
|
21
|
+
"Tree-shakeable exports",
|
|
22
|
+
],
|
|
23
|
+
quickStart: `import { Button, Card, Text } from '@idealyst/components';
|
|
24
|
+
|
|
25
|
+
<Card>
|
|
26
|
+
<Text variant="headline">Hello World</Text>
|
|
27
|
+
<Button onPress={() => console.log('Pressed!')}>
|
|
28
|
+
Click Me
|
|
29
|
+
</Button>
|
|
30
|
+
</Card>`,
|
|
31
|
+
apiHighlights: [
|
|
32
|
+
"Button, IconButton, FAB",
|
|
33
|
+
"Card, View, Screen",
|
|
34
|
+
"Input, Select, Checkbox, Switch",
|
|
35
|
+
"Dialog, Popover, Menu",
|
|
36
|
+
"Text, Link, Badge, Chip",
|
|
37
|
+
],
|
|
38
|
+
relatedPackages: ["theme", "navigation"],
|
|
39
|
+
},
|
|
40
|
+
theme: {
|
|
41
|
+
name: "Theme",
|
|
42
|
+
npmName: "@idealyst/theme",
|
|
43
|
+
description: "Cross-platform theming system built on react-native-unistyles. Provides colors, typography, spacing, and responsive breakpoints.",
|
|
44
|
+
category: "core",
|
|
45
|
+
platforms: ["web", "native"],
|
|
46
|
+
documentationStatus: "full",
|
|
47
|
+
installation: "yarn add @idealyst/theme react-native-unistyles",
|
|
48
|
+
peerDependencies: ["react-native-unistyles"],
|
|
49
|
+
features: [
|
|
50
|
+
"Light and dark theme variants",
|
|
51
|
+
"Semantic color tokens (intent-based)",
|
|
52
|
+
"Responsive breakpoints",
|
|
53
|
+
"Typography scale",
|
|
54
|
+
"Spacing and sizing utilities",
|
|
55
|
+
"Platform-specific adaptations",
|
|
56
|
+
],
|
|
57
|
+
quickStart: `import { UnistylesProvider } from '@idealyst/theme';
|
|
58
|
+
|
|
59
|
+
<UnistylesProvider>
|
|
60
|
+
<App />
|
|
61
|
+
</UnistylesProvider>`,
|
|
62
|
+
apiHighlights: [
|
|
63
|
+
"Size: 'xs' | 'sm' | 'md' | 'lg' | 'xl'",
|
|
64
|
+
"Intent: 'primary' | 'secondary' | 'success' | 'warning' | 'danger'",
|
|
65
|
+
"Color: theme color tokens",
|
|
66
|
+
"useStyles() hook for styling",
|
|
67
|
+
],
|
|
68
|
+
relatedPackages: ["components"],
|
|
69
|
+
},
|
|
70
|
+
navigation: {
|
|
71
|
+
name: "Navigation",
|
|
72
|
+
npmName: "@idealyst/navigation",
|
|
73
|
+
description: "Unified navigation system for web and React Native. Stack, tab, drawer, and modal navigators with type-safe routing.",
|
|
74
|
+
category: "core",
|
|
75
|
+
platforms: ["web", "native"],
|
|
76
|
+
documentationStatus: "full",
|
|
77
|
+
installation: "yarn add @idealyst/navigation",
|
|
78
|
+
peerDependencies: ["@react-navigation/native (native only)"],
|
|
79
|
+
features: [
|
|
80
|
+
"Type-safe route definitions",
|
|
81
|
+
"Stack, Tab, Drawer, Modal navigators",
|
|
82
|
+
"Deep linking support",
|
|
83
|
+
"Custom layouts for web (headers, sidebars)",
|
|
84
|
+
"useNavigator hook for navigation actions",
|
|
85
|
+
"Cross-platform URL handling",
|
|
86
|
+
],
|
|
87
|
+
quickStart: `import { Router, useNavigator } from '@idealyst/navigation';
|
|
88
|
+
|
|
89
|
+
const routes = {
|
|
90
|
+
home: { path: '/', screen: HomeScreen },
|
|
91
|
+
profile: { path: '/profile/:id', screen: ProfileScreen },
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
<Router routes={routes} />`,
|
|
95
|
+
apiHighlights: [
|
|
96
|
+
"Router component",
|
|
97
|
+
"useNavigator() hook",
|
|
98
|
+
"Route configuration",
|
|
99
|
+
"Navigator types (stack, tabs, drawer)",
|
|
100
|
+
],
|
|
101
|
+
relatedPackages: ["components", "theme"],
|
|
102
|
+
},
|
|
103
|
+
cli: {
|
|
104
|
+
name: "CLI",
|
|
105
|
+
npmName: "@idealyst/cli",
|
|
106
|
+
description: "Command-line tool for generating Idealyst projects. Creates monorepo workspaces with web, native, API, and database packages.",
|
|
107
|
+
category: "tooling",
|
|
108
|
+
platforms: ["node"],
|
|
109
|
+
documentationStatus: "full",
|
|
110
|
+
installation: "npx @idealyst/cli init my-project",
|
|
111
|
+
features: [
|
|
112
|
+
"Monorepo workspace generation",
|
|
113
|
+
"React Native app scaffolding",
|
|
114
|
+
"Vite-based web app generation",
|
|
115
|
+
"tRPC API server template",
|
|
116
|
+
"Prisma database layer",
|
|
117
|
+
"Shared library template",
|
|
118
|
+
],
|
|
119
|
+
quickStart: `# Create a new workspace
|
|
120
|
+
npx @idealyst/cli init my-app
|
|
121
|
+
|
|
122
|
+
# Add a native app
|
|
123
|
+
cd my-app
|
|
124
|
+
npx @idealyst/cli create mobile --type native --app-name "My App"
|
|
125
|
+
|
|
126
|
+
# Add a web app
|
|
127
|
+
npx @idealyst/cli create web --type web --with-trpc`,
|
|
128
|
+
apiHighlights: [
|
|
129
|
+
"idealyst init <name>",
|
|
130
|
+
"idealyst create <name> --type native|web|api|database|shared",
|
|
131
|
+
],
|
|
132
|
+
relatedPackages: ["components", "theme", "navigation"],
|
|
133
|
+
},
|
|
134
|
+
storage: {
|
|
135
|
+
name: "Storage",
|
|
136
|
+
npmName: "@idealyst/storage",
|
|
137
|
+
description: "Cross-platform key-value storage with async API. Uses localStorage on web and AsyncStorage on React Native.",
|
|
138
|
+
category: "data",
|
|
139
|
+
platforms: ["web", "native"],
|
|
140
|
+
documentationStatus: "full",
|
|
141
|
+
installation: "yarn add @idealyst/storage",
|
|
142
|
+
peerDependencies: ["@react-native-async-storage/async-storage (native)"],
|
|
143
|
+
features: [
|
|
144
|
+
"Unified API across platforms",
|
|
145
|
+
"Async/await interface",
|
|
146
|
+
"JSON serialization built-in",
|
|
147
|
+
"TypeScript generics for type safety",
|
|
148
|
+
"Prefix namespacing",
|
|
149
|
+
],
|
|
150
|
+
quickStart: `import { storage } from '@idealyst/storage';
|
|
151
|
+
|
|
152
|
+
// Store a value
|
|
153
|
+
await storage.set('user', { name: 'Alice', id: 1 });
|
|
154
|
+
|
|
155
|
+
// Retrieve a value
|
|
156
|
+
const user = await storage.get<User>('user');
|
|
157
|
+
|
|
158
|
+
// Remove a value
|
|
159
|
+
await storage.remove('user');`,
|
|
160
|
+
apiHighlights: [
|
|
161
|
+
"storage.get<T>(key)",
|
|
162
|
+
"storage.set(key, value)",
|
|
163
|
+
"storage.remove(key)",
|
|
164
|
+
"storage.clear()",
|
|
165
|
+
],
|
|
166
|
+
relatedPackages: ["oauth-client", "config"],
|
|
167
|
+
},
|
|
168
|
+
translate: {
|
|
169
|
+
name: "Translate",
|
|
170
|
+
npmName: "@idealyst/translate",
|
|
171
|
+
description: "Internationalization (i18n) package with runtime API and Babel plugin for static key extraction.",
|
|
172
|
+
category: "utility",
|
|
173
|
+
platforms: ["web", "native"],
|
|
174
|
+
documentationStatus: "full",
|
|
175
|
+
installation: "yarn add @idealyst/translate",
|
|
176
|
+
features: [
|
|
177
|
+
"TranslateProvider for app-wide i18n",
|
|
178
|
+
"useTranslation hook",
|
|
179
|
+
"Interpolation support",
|
|
180
|
+
"Pluralization",
|
|
181
|
+
"Babel plugin for key extraction",
|
|
182
|
+
"Missing translation detection",
|
|
183
|
+
],
|
|
184
|
+
quickStart: `import { TranslateProvider, useTranslation } from '@idealyst/translate';
|
|
185
|
+
|
|
186
|
+
function App() {
|
|
187
|
+
return (
|
|
188
|
+
<TranslateProvider translations={translations} defaultLanguage="en">
|
|
189
|
+
<MyComponent />
|
|
190
|
+
</TranslateProvider>
|
|
191
|
+
);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
function MyComponent() {
|
|
195
|
+
const { t } = useTranslation();
|
|
196
|
+
return <Text>{t('greeting', { name: 'World' })}</Text>;
|
|
197
|
+
}`,
|
|
198
|
+
apiHighlights: [
|
|
199
|
+
"TranslateProvider",
|
|
200
|
+
"useTranslation()",
|
|
201
|
+
"useLanguage()",
|
|
202
|
+
"Trans component",
|
|
203
|
+
],
|
|
204
|
+
relatedPackages: ["components"],
|
|
205
|
+
},
|
|
206
|
+
camera: {
|
|
207
|
+
name: "Camera",
|
|
208
|
+
npmName: "@idealyst/camera",
|
|
209
|
+
description: "Cross-platform camera component for photo and video capture. Uses react-native-vision-camera on native and MediaDevices API on web.",
|
|
210
|
+
category: "media",
|
|
211
|
+
platforms: ["web", "native"],
|
|
212
|
+
documentationStatus: "minimal",
|
|
213
|
+
installation: "yarn add @idealyst/camera react-native-vision-camera",
|
|
214
|
+
peerDependencies: ["react-native-vision-camera (native)"],
|
|
215
|
+
features: [
|
|
216
|
+
"Photo capture",
|
|
217
|
+
"Video recording",
|
|
218
|
+
"Camera switching (front/back)",
|
|
219
|
+
"Flash control",
|
|
220
|
+
"Zoom support",
|
|
221
|
+
"Permission handling",
|
|
222
|
+
],
|
|
223
|
+
quickStart: `import { Camera, useCameraPermission } from '@idealyst/camera';
|
|
224
|
+
|
|
225
|
+
function CameraScreen() {
|
|
226
|
+
const { hasPermission, requestPermission } = useCameraPermission();
|
|
227
|
+
|
|
228
|
+
if (!hasPermission) {
|
|
229
|
+
return <Button onPress={requestPermission}>Grant Permission</Button>;
|
|
230
|
+
}
|
|
231
|
+
|
|
232
|
+
return (
|
|
233
|
+
<Camera
|
|
234
|
+
onCapture={(photo) => console.log('Photo taken:', photo)}
|
|
235
|
+
/>
|
|
236
|
+
);
|
|
237
|
+
}`,
|
|
238
|
+
apiHighlights: [
|
|
239
|
+
"Camera component",
|
|
240
|
+
"useCameraPermission()",
|
|
241
|
+
"useCamera()",
|
|
242
|
+
"Photo/Video capture callbacks",
|
|
243
|
+
],
|
|
244
|
+
relatedPackages: ["components", "storage"],
|
|
245
|
+
},
|
|
246
|
+
microphone: {
|
|
247
|
+
name: "Microphone",
|
|
248
|
+
npmName: "@idealyst/microphone",
|
|
249
|
+
description: "Cross-platform microphone streaming for real-time audio capture. Provides PCM audio data for processing or streaming.",
|
|
250
|
+
category: "media",
|
|
251
|
+
platforms: ["web", "native"],
|
|
252
|
+
documentationStatus: "minimal",
|
|
253
|
+
installation: "yarn add @idealyst/microphone",
|
|
254
|
+
peerDependencies: ["react-native-live-audio-stream (native)"],
|
|
255
|
+
features: [
|
|
256
|
+
"Real-time audio streaming",
|
|
257
|
+
"PCM audio format",
|
|
258
|
+
"Configurable sample rate",
|
|
259
|
+
"Permission handling",
|
|
260
|
+
"Start/stop controls",
|
|
261
|
+
"Audio level monitoring",
|
|
262
|
+
],
|
|
263
|
+
quickStart: `import { useMicrophone } from '@idealyst/microphone';
|
|
264
|
+
|
|
265
|
+
function AudioRecorder() {
|
|
266
|
+
const { start, stop, isRecording, audioData } = useMicrophone({
|
|
267
|
+
sampleRate: 16000,
|
|
268
|
+
onAudioData: (pcmData) => {
|
|
269
|
+
// Process or stream audio data
|
|
270
|
+
},
|
|
271
|
+
});
|
|
272
|
+
|
|
273
|
+
return (
|
|
274
|
+
<Button onPress={isRecording ? stop : start}>
|
|
275
|
+
{isRecording ? 'Stop' : 'Record'}
|
|
276
|
+
</Button>
|
|
277
|
+
);
|
|
278
|
+
}`,
|
|
279
|
+
apiHighlights: [
|
|
280
|
+
"useMicrophone() hook",
|
|
281
|
+
"MicrophoneProvider",
|
|
282
|
+
"Audio streaming callbacks",
|
|
283
|
+
"Sample rate configuration",
|
|
284
|
+
],
|
|
285
|
+
relatedPackages: ["camera", "components"],
|
|
286
|
+
},
|
|
287
|
+
datagrid: {
|
|
288
|
+
name: "DataGrid",
|
|
289
|
+
npmName: "@idealyst/datagrid",
|
|
290
|
+
description: "High-performance virtualized data grid for large datasets. Supports sorting, filtering, and custom cell rendering.",
|
|
291
|
+
category: "data",
|
|
292
|
+
platforms: ["web", "native"],
|
|
293
|
+
documentationStatus: "minimal",
|
|
294
|
+
installation: "yarn add @idealyst/datagrid @idealyst/components @idealyst/theme",
|
|
295
|
+
peerDependencies: [
|
|
296
|
+
"@idealyst/components",
|
|
297
|
+
"@idealyst/theme",
|
|
298
|
+
"react-window (web)",
|
|
299
|
+
],
|
|
300
|
+
features: [
|
|
301
|
+
"Virtualized rendering for large datasets",
|
|
302
|
+
"Column sorting",
|
|
303
|
+
"Row selection",
|
|
304
|
+
"Custom cell renderers",
|
|
305
|
+
"Fixed headers",
|
|
306
|
+
"Responsive column sizing",
|
|
307
|
+
],
|
|
308
|
+
quickStart: `import { DataGrid } from '@idealyst/datagrid';
|
|
309
|
+
|
|
310
|
+
const columns = [
|
|
311
|
+
{ key: 'name', header: 'Name', width: 200 },
|
|
312
|
+
{ key: 'email', header: 'Email', width: 250 },
|
|
313
|
+
{ key: 'status', header: 'Status', width: 100 },
|
|
314
|
+
];
|
|
315
|
+
|
|
316
|
+
<DataGrid
|
|
317
|
+
data={users}
|
|
318
|
+
columns={columns}
|
|
319
|
+
onRowClick={(row) => console.log('Selected:', row)}
|
|
320
|
+
/>`,
|
|
321
|
+
apiHighlights: [
|
|
322
|
+
"DataGrid component",
|
|
323
|
+
"Column configuration",
|
|
324
|
+
"Row selection callbacks",
|
|
325
|
+
"Custom cell renderers",
|
|
326
|
+
],
|
|
327
|
+
relatedPackages: ["components", "theme"],
|
|
328
|
+
},
|
|
329
|
+
datepicker: {
|
|
330
|
+
name: "DatePicker",
|
|
331
|
+
npmName: "@idealyst/datepicker",
|
|
332
|
+
description: "Cross-platform date and time picker components. Includes calendar, time picker, and date range selection.",
|
|
333
|
+
category: "ui",
|
|
334
|
+
platforms: ["web", "native"],
|
|
335
|
+
documentationStatus: "minimal",
|
|
336
|
+
installation: "yarn add @idealyst/datepicker @idealyst/theme",
|
|
337
|
+
peerDependencies: ["@idealyst/theme"],
|
|
338
|
+
features: [
|
|
339
|
+
"Date picker with calendar",
|
|
340
|
+
"Time picker",
|
|
341
|
+
"Date range selection",
|
|
342
|
+
"Min/max date constraints",
|
|
343
|
+
"Locale support",
|
|
344
|
+
"Customizable styling",
|
|
345
|
+
],
|
|
346
|
+
quickStart: `import { DatePicker, TimePicker } from '@idealyst/datepicker';
|
|
347
|
+
|
|
348
|
+
<DatePicker
|
|
349
|
+
value={selectedDate}
|
|
350
|
+
onChange={setSelectedDate}
|
|
351
|
+
minDate={new Date()}
|
|
352
|
+
/>
|
|
353
|
+
|
|
354
|
+
<TimePicker
|
|
355
|
+
value={selectedTime}
|
|
356
|
+
onChange={setSelectedTime}
|
|
357
|
+
is24Hour={true}
|
|
358
|
+
/>`,
|
|
359
|
+
apiHighlights: [
|
|
360
|
+
"DatePicker component",
|
|
361
|
+
"TimePicker component",
|
|
362
|
+
"DateRangePicker component",
|
|
363
|
+
"Calendar component",
|
|
364
|
+
],
|
|
365
|
+
relatedPackages: ["components", "theme"],
|
|
366
|
+
},
|
|
367
|
+
"oauth-client": {
|
|
368
|
+
name: "OAuth Client",
|
|
369
|
+
npmName: "@idealyst/oauth-client",
|
|
370
|
+
description: "Universal OAuth2 client for web and React Native. Supports authorization code flow with PKCE.",
|
|
371
|
+
category: "auth",
|
|
372
|
+
platforms: ["web", "native"],
|
|
373
|
+
documentationStatus: "minimal",
|
|
374
|
+
installation: "yarn add @idealyst/oauth-client @idealyst/storage",
|
|
375
|
+
peerDependencies: ["@idealyst/storage"],
|
|
376
|
+
features: [
|
|
377
|
+
"Authorization code flow with PKCE",
|
|
378
|
+
"Token refresh handling",
|
|
379
|
+
"Secure token storage",
|
|
380
|
+
"Multiple provider support",
|
|
381
|
+
"Silent token refresh",
|
|
382
|
+
"Logout handling",
|
|
383
|
+
],
|
|
384
|
+
quickStart: `import { OAuthClient } from '@idealyst/oauth-client';
|
|
385
|
+
|
|
386
|
+
const oauth = new OAuthClient({
|
|
387
|
+
clientId: 'your-client-id',
|
|
388
|
+
authorizationEndpoint: 'https://auth.example.com/authorize',
|
|
389
|
+
tokenEndpoint: 'https://auth.example.com/token',
|
|
390
|
+
redirectUri: 'myapp://callback',
|
|
391
|
+
});
|
|
392
|
+
|
|
393
|
+
// Start login flow
|
|
394
|
+
await oauth.login();
|
|
395
|
+
|
|
396
|
+
// Get access token
|
|
397
|
+
const token = await oauth.getAccessToken();
|
|
398
|
+
|
|
399
|
+
// Logout
|
|
400
|
+
await oauth.logout();`,
|
|
401
|
+
apiHighlights: [
|
|
402
|
+
"OAuthClient class",
|
|
403
|
+
"login() / logout()",
|
|
404
|
+
"getAccessToken()",
|
|
405
|
+
"Token refresh handling",
|
|
406
|
+
],
|
|
407
|
+
relatedPackages: ["storage", "navigation"],
|
|
408
|
+
},
|
|
409
|
+
config: {
|
|
410
|
+
name: "Config",
|
|
411
|
+
npmName: "@idealyst/config",
|
|
412
|
+
description: "Cross-platform configuration and environment variable support. Type-safe access to env vars on web and native.",
|
|
413
|
+
category: "utility",
|
|
414
|
+
platforms: ["web", "native", "node"],
|
|
415
|
+
documentationStatus: "minimal",
|
|
416
|
+
installation: "yarn add @idealyst/config",
|
|
417
|
+
peerDependencies: ["react-native-config (native)"],
|
|
418
|
+
features: [
|
|
419
|
+
"Type-safe environment variables",
|
|
420
|
+
"Cross-platform API",
|
|
421
|
+
"Build-time configuration",
|
|
422
|
+
"Vite plugin for web",
|
|
423
|
+
"React Native Config integration",
|
|
424
|
+
"Default value support",
|
|
425
|
+
],
|
|
426
|
+
quickStart: `// config.ts
|
|
427
|
+
import { defineConfig } from '@idealyst/config';
|
|
428
|
+
|
|
429
|
+
export const config = defineConfig({
|
|
430
|
+
API_URL: { required: true },
|
|
431
|
+
DEBUG: { default: 'false' },
|
|
432
|
+
APP_NAME: { default: 'My App' },
|
|
433
|
+
});
|
|
434
|
+
|
|
435
|
+
// Usage
|
|
436
|
+
import { config } from './config';
|
|
437
|
+
console.log(config.API_URL);`,
|
|
438
|
+
apiHighlights: [
|
|
439
|
+
"defineConfig()",
|
|
440
|
+
"Type-safe config object",
|
|
441
|
+
"Vite plugin",
|
|
442
|
+
"CLI for generation",
|
|
443
|
+
],
|
|
444
|
+
relatedPackages: ["storage"],
|
|
445
|
+
},
|
|
446
|
+
tooling: {
|
|
447
|
+
name: "Tooling",
|
|
448
|
+
npmName: "@idealyst/tooling",
|
|
449
|
+
description: "Code analysis and validation utilities for Idealyst Framework. Includes Vite plugins and static analyzers.",
|
|
450
|
+
category: "tooling",
|
|
451
|
+
platforms: ["node"],
|
|
452
|
+
documentationStatus: "minimal",
|
|
453
|
+
installation: "yarn add -D @idealyst/tooling",
|
|
454
|
+
features: [
|
|
455
|
+
"Component usage analysis",
|
|
456
|
+
"Import validation",
|
|
457
|
+
"Vite plugin for build-time checks",
|
|
458
|
+
"Custom rule definitions",
|
|
459
|
+
"Documentation generation",
|
|
460
|
+
],
|
|
461
|
+
quickStart: `// vite.config.ts
|
|
462
|
+
import { idealystPlugin } from '@idealyst/tooling/vite';
|
|
463
|
+
|
|
464
|
+
export default {
|
|
465
|
+
plugins: [
|
|
466
|
+
idealystPlugin({
|
|
467
|
+
validateImports: true,
|
|
468
|
+
analyzeUsage: true,
|
|
469
|
+
}),
|
|
470
|
+
],
|
|
471
|
+
};`,
|
|
472
|
+
apiHighlights: [
|
|
473
|
+
"idealystPlugin() for Vite",
|
|
474
|
+
"analyzeComponent()",
|
|
475
|
+
"Custom rule API",
|
|
476
|
+
],
|
|
477
|
+
relatedPackages: ["cli"],
|
|
478
|
+
},
|
|
479
|
+
"mcp-server": {
|
|
480
|
+
name: "MCP Server",
|
|
481
|
+
npmName: "@idealyst/mcp-server",
|
|
482
|
+
description: "Model Context Protocol server providing AI assistants with Idealyst framework documentation, types, and examples.",
|
|
483
|
+
category: "tooling",
|
|
484
|
+
platforms: ["node"],
|
|
485
|
+
documentationStatus: "full",
|
|
486
|
+
installation: "yarn add @idealyst/mcp-server",
|
|
487
|
+
features: [
|
|
488
|
+
"Component documentation",
|
|
489
|
+
"Type extraction from source",
|
|
490
|
+
"Validated code examples",
|
|
491
|
+
"Icon search (7,447 MDI icons)",
|
|
492
|
+
"Navigation and theme guides",
|
|
493
|
+
"CLI command reference",
|
|
494
|
+
],
|
|
495
|
+
quickStart: `// .mcp.json (Claude Code)
|
|
496
|
+
{
|
|
497
|
+
"mcpServers": {
|
|
498
|
+
"idealyst": {
|
|
499
|
+
"command": "node",
|
|
500
|
+
"args": ["node_modules/@idealyst/mcp-server/dist/index.js"]
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
}`,
|
|
504
|
+
apiHighlights: [
|
|
505
|
+
"list_components",
|
|
506
|
+
"get_component_docs",
|
|
507
|
+
"search_icons",
|
|
508
|
+
"get_*_types",
|
|
509
|
+
],
|
|
510
|
+
relatedPackages: ["components", "theme", "navigation"],
|
|
511
|
+
},
|
|
512
|
+
};
|
|
513
|
+
/**
|
|
514
|
+
* Get all packages grouped by category
|
|
515
|
+
*/
|
|
516
|
+
export function getPackagesByCategory() {
|
|
517
|
+
const grouped = {};
|
|
518
|
+
for (const pkg of Object.values(packages)) {
|
|
519
|
+
if (!grouped[pkg.category]) {
|
|
520
|
+
grouped[pkg.category] = [];
|
|
521
|
+
}
|
|
522
|
+
grouped[pkg.category].push(pkg);
|
|
523
|
+
}
|
|
524
|
+
return grouped;
|
|
525
|
+
}
|
|
526
|
+
/**
|
|
527
|
+
* Get a summary list of all packages
|
|
528
|
+
*/
|
|
529
|
+
export function getPackageSummary() {
|
|
530
|
+
return Object.entries(packages).map(([key, pkg]) => ({
|
|
531
|
+
name: pkg.name,
|
|
532
|
+
npmName: pkg.npmName,
|
|
533
|
+
category: pkg.category,
|
|
534
|
+
description: pkg.description,
|
|
535
|
+
platforms: pkg.platforms,
|
|
536
|
+
documentationStatus: pkg.documentationStatus,
|
|
537
|
+
}));
|
|
538
|
+
}
|
|
539
|
+
/**
|
|
540
|
+
* Search packages by query
|
|
541
|
+
*/
|
|
542
|
+
export function searchPackages(query) {
|
|
543
|
+
const lowerQuery = query.toLowerCase();
|
|
544
|
+
return Object.values(packages).filter((pkg) => pkg.name.toLowerCase().includes(lowerQuery) ||
|
|
545
|
+
pkg.npmName.toLowerCase().includes(lowerQuery) ||
|
|
546
|
+
pkg.description.toLowerCase().includes(lowerQuery) ||
|
|
547
|
+
pkg.features.some((f) => f.toLowerCase().includes(lowerQuery)) ||
|
|
548
|
+
pkg.category.toLowerCase().includes(lowerQuery));
|
|
549
|
+
}
|
|
550
|
+
//# sourceMappingURL=packages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packages.js","sourceRoot":"","sources":["../../src/data/packages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage-guides.d.ts","sourceRoot":"","sources":["../../src/data/storage-guides.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkahD,CAAC"}
|