ui-ux-consultant-cli 1.0.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.
- package/assets/ui-ux-consultant/SKILL.md +844 -0
- package/assets/ui-ux-consultant/references/accessibility.md +175 -0
- package/assets/ui-ux-consultant/references/alt-libraries.md +90 -0
- package/assets/ui-ux-consultant/references/animations.md +448 -0
- package/assets/ui-ux-consultant/references/catalog/colors.md +91 -0
- package/assets/ui-ux-consultant/references/catalog/fonts.md +363 -0
- package/assets/ui-ux-consultant/references/catalog/products.md +340 -0
- package/assets/ui-ux-consultant/references/catalog/styles.md +165 -0
- package/assets/ui-ux-consultant/references/components.md +1116 -0
- package/assets/ui-ux-consultant/references/patterns.md +600 -0
- package/assets/ui-ux-consultant/references/performance.md +198 -0
- package/assets/ui-ux-consultant/references/stacks/astro.md +382 -0
- package/assets/ui-ux-consultant/references/stacks/flutter.md +308 -0
- package/assets/ui-ux-consultant/references/stacks/html-tailwind.md +415 -0
- package/assets/ui-ux-consultant/references/stacks/jetpack-compose.md +333 -0
- package/assets/ui-ux-consultant/references/stacks/laravel.md +521 -0
- package/assets/ui-ux-consultant/references/stacks/nextjs.md +275 -0
- package/assets/ui-ux-consultant/references/stacks/nuxt-ui.md +384 -0
- package/assets/ui-ux-consultant/references/stacks/nuxtjs.md +264 -0
- package/assets/ui-ux-consultant/references/stacks/react-native.md +346 -0
- package/assets/ui-ux-consultant/references/stacks/react.md +268 -0
- package/assets/ui-ux-consultant/references/stacks/shadcn.md +485 -0
- package/assets/ui-ux-consultant/references/stacks/svelte.md +429 -0
- package/assets/ui-ux-consultant/references/stacks/swiftui.md +336 -0
- package/assets/ui-ux-consultant/references/stacks/threejs.md +366 -0
- package/assets/ui-ux-consultant/references/stacks/vue.md +272 -0
- package/assets/ui-ux-consultant/references/theming.md +701 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +130 -0
- package/package.json +51 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
4
|
+
if (k2 === undefined) k2 = k;
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
8
|
+
}
|
|
9
|
+
Object.defineProperty(o, k2, desc);
|
|
10
|
+
}) : (function(o, m, k, k2) {
|
|
11
|
+
if (k2 === undefined) k2 = k;
|
|
12
|
+
o[k2] = m[k];
|
|
13
|
+
}));
|
|
14
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
15
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
16
|
+
}) : function(o, v) {
|
|
17
|
+
o["default"] = v;
|
|
18
|
+
});
|
|
19
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
20
|
+
var ownKeys = function(o) {
|
|
21
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
22
|
+
var ar = [];
|
|
23
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
24
|
+
return ar;
|
|
25
|
+
};
|
|
26
|
+
return ownKeys(o);
|
|
27
|
+
};
|
|
28
|
+
return function (mod) {
|
|
29
|
+
if (mod && mod.__esModule) return mod;
|
|
30
|
+
var result = {};
|
|
31
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
32
|
+
__setModuleDefault(result, mod);
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
})();
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
const commander_1 = require("commander");
|
|
41
|
+
const fs = __importStar(require("fs-extra"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
44
|
+
const program = new commander_1.Command();
|
|
45
|
+
const ASSETS_DIR = path.join(__dirname, '..', 'assets', 'ui-ux-consultant');
|
|
46
|
+
const PLATFORM_PATHS = {
|
|
47
|
+
claude: path.join('.claude', 'skills'),
|
|
48
|
+
cursor: path.join('.cursor', 'skills'),
|
|
49
|
+
windsurf: path.join('.windsurf', 'skills'),
|
|
50
|
+
copilot: path.join('.github', 'skills'),
|
|
51
|
+
};
|
|
52
|
+
function getInstallTarget(ai, global, cwd) {
|
|
53
|
+
const home = process.env.USERPROFILE || process.env.HOME || '~';
|
|
54
|
+
const base = global
|
|
55
|
+
? path.join(home, `.${ai}`, 'skills')
|
|
56
|
+
: path.join(cwd, PLATFORM_PATHS[ai] || path.join(`.${ai}`, 'skills'));
|
|
57
|
+
return path.join(base, 'ui-ux-consultant');
|
|
58
|
+
}
|
|
59
|
+
const pkg = require('../package.json');
|
|
60
|
+
program
|
|
61
|
+
.name('uiux')
|
|
62
|
+
.description('UI/UX Consultant Claude Skill installer')
|
|
63
|
+
.version(pkg.version);
|
|
64
|
+
program
|
|
65
|
+
.command('init')
|
|
66
|
+
.description('Install the UI/UX Consultant skill into your AI assistant')
|
|
67
|
+
.option('--ai <platform>', 'Target platform: claude | cursor | windsurf | copilot | all', 'claude')
|
|
68
|
+
.option('--global', 'Install to home directory (available across all projects)', false)
|
|
69
|
+
.action(async (opts) => {
|
|
70
|
+
const cwd = process.cwd();
|
|
71
|
+
const platforms = opts.ai === 'all'
|
|
72
|
+
? Object.keys(PLATFORM_PATHS)
|
|
73
|
+
: [opts.ai];
|
|
74
|
+
for (const platform of platforms) {
|
|
75
|
+
if (!PLATFORM_PATHS[platform]) {
|
|
76
|
+
console.error(chalk_1.default.red(`Unknown platform: ${platform}`));
|
|
77
|
+
console.log(`Supported: ${Object.keys(PLATFORM_PATHS).join(', ')}, all`);
|
|
78
|
+
process.exit(1);
|
|
79
|
+
}
|
|
80
|
+
const target = getInstallTarget(platform, opts.global, cwd);
|
|
81
|
+
console.log(chalk_1.default.blue(`Installing to: ${target}`));
|
|
82
|
+
try {
|
|
83
|
+
await fs.ensureDir(path.dirname(target));
|
|
84
|
+
await fs.copy(ASSETS_DIR, target, { overwrite: true });
|
|
85
|
+
console.log(chalk_1.default.green(`✓ Installed for ${platform}`));
|
|
86
|
+
}
|
|
87
|
+
catch (err) {
|
|
88
|
+
console.error(chalk_1.default.red(`✗ Failed for ${platform}:`), err);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
console.log(chalk_1.default.bold('\nDone! Start a new Claude session and ask for UI/UX help.'));
|
|
92
|
+
});
|
|
93
|
+
program
|
|
94
|
+
.command('update')
|
|
95
|
+
.description('Re-sync skill files from the installed CLI version')
|
|
96
|
+
.option('--ai <platform>', 'Target platform', 'claude')
|
|
97
|
+
.option('--global', 'Update global install', false)
|
|
98
|
+
.action(async (opts) => {
|
|
99
|
+
const target = getInstallTarget(opts.ai, opts.global, process.cwd());
|
|
100
|
+
console.log(chalk_1.default.blue(`Updating: ${target}`));
|
|
101
|
+
try {
|
|
102
|
+
await fs.copy(ASSETS_DIR, target, { overwrite: true });
|
|
103
|
+
console.log(chalk_1.default.green(`✓ Updated for ${opts.ai}`));
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
console.error(chalk_1.default.red('✗ Update failed:'), err);
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
program
|
|
110
|
+
.command('uninstall')
|
|
111
|
+
.description('Remove the installed skill')
|
|
112
|
+
.option('--ai <platform>', 'Target platform', 'claude')
|
|
113
|
+
.option('--global', 'Remove from global install', false)
|
|
114
|
+
.action(async (opts) => {
|
|
115
|
+
const target = getInstallTarget(opts.ai, opts.global, process.cwd());
|
|
116
|
+
if (await fs.pathExists(target)) {
|
|
117
|
+
await fs.remove(target);
|
|
118
|
+
console.log(chalk_1.default.green(`✓ Removed: ${target}`));
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
console.log(chalk_1.default.yellow(`Nothing to remove at: ${target}`));
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
program
|
|
125
|
+
.command('versions')
|
|
126
|
+
.description('Show installed CLI version')
|
|
127
|
+
.action(() => {
|
|
128
|
+
console.log(`ui-ux-consultant-cli: ${pkg.version}`);
|
|
129
|
+
});
|
|
130
|
+
program.parse(process.argv);
|
package/package.json
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "ui-ux-consultant-cli",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "CLI installer for the UI/UX Consultant Claude skill",
|
|
5
|
+
"bin": {
|
|
6
|
+
"uiux": "dist/index.js"
|
|
7
|
+
},
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"files": [
|
|
10
|
+
"dist/",
|
|
11
|
+
"assets/"
|
|
12
|
+
],
|
|
13
|
+
"scripts": {
|
|
14
|
+
"build": "tsc",
|
|
15
|
+
"sync:assets": "node -e \"const fs=require('fs-extra');fs.copySync('../src/ui-ux-consultant','./assets/ui-ux-consultant',{overwrite:true});console.log('Assets synced.')\"",
|
|
16
|
+
"check:assets": "node -e \"const fs=require('fs');console.log(fs.readdirSync('./assets/ui-ux-consultant'))\"",
|
|
17
|
+
"prepublishOnly": "npm run sync:assets && npm run build"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"commander": "^12.0.0",
|
|
21
|
+
"fs-extra": "^11.0.0",
|
|
22
|
+
"chalk": "^5.3.0"
|
|
23
|
+
},
|
|
24
|
+
"devDependencies": {
|
|
25
|
+
"@types/fs-extra": "^11.0.0",
|
|
26
|
+
"@types/node": "^20.0.0",
|
|
27
|
+
"typescript": "^5.0.0"
|
|
28
|
+
},
|
|
29
|
+
"engines": {
|
|
30
|
+
"node": ">=18.0.0"
|
|
31
|
+
},
|
|
32
|
+
"publishConfig": {
|
|
33
|
+
"access": "public"
|
|
34
|
+
},
|
|
35
|
+
"keywords": [
|
|
36
|
+
"claude",
|
|
37
|
+
"cursor",
|
|
38
|
+
"skill",
|
|
39
|
+
"ui-ux",
|
|
40
|
+
"angular",
|
|
41
|
+
"react",
|
|
42
|
+
"design-system"
|
|
43
|
+
],
|
|
44
|
+
"author": "Yatin Rai <raiyatin55@gmail.com>",
|
|
45
|
+
"license": "MIT",
|
|
46
|
+
"repository": {
|
|
47
|
+
"type": "git",
|
|
48
|
+
"url": "https://github.com/yatin-rai/ui-ux-consultant-skill.git",
|
|
49
|
+
"directory": "cli"
|
|
50
|
+
}
|
|
51
|
+
}
|