@gxp-dev/tools 2.0.34 → 2.0.36

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 CHANGED
@@ -5,13 +5,13 @@ A development devtools for creating plugins for the GxP kiosk platform. This pac
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- npm install -g @gxp-dev/tools
8
+ pnpm install -g @gxp-dev/tools
9
9
  ```
10
10
 
11
11
  Or use it as a dev dependency in your project:
12
12
 
13
13
  ```bash
14
- npm install --save-dev @gxp-dev/tools
14
+ pnpm install --save-dev @gxp-dev/tools
15
15
  ```
16
16
 
17
17
  ## Quick Start
@@ -22,7 +22,7 @@ Create a new GxP plugin project:
22
22
  gxdev init my-plugin
23
23
  cd my-plugin
24
24
  git init
25
- npm run dev
25
+ pnpm run dev
26
26
  ```
27
27
 
28
28
  ## CLI Commands
@@ -144,12 +144,12 @@ The platform emulator that wraps user plugins during development. It:
144
144
 
145
145
  2. **Install dependencies**:
146
146
  ```bash
147
- npm install
147
+ pnpm install
148
148
  ```
149
149
 
150
150
  3. **Link for local testing**:
151
151
  ```bash
152
- npm link
152
+ pnpm link
153
153
  ```
154
154
 
155
155
  4. **Create a test project**:
@@ -159,12 +159,12 @@ The platform emulator that wraps user plugins during development. It:
159
159
  gxdev init test-app
160
160
  cd test-app
161
161
 
162
- # Link to local devtools instead of npm version
162
+ # Link to local devtools instead of published version
163
163
  rm -rf node_modules/@gxp-dev/tools
164
164
  mkdir -p node_modules/@gramercytech
165
165
  ln -s /path/to/gx-devtools node_modules/@gxp-dev/tools
166
166
 
167
- npm run dev-http
167
+ pnpm run dev-http
168
168
  ```
169
169
 
170
170
  ## Making Changes
@@ -209,25 +209,25 @@ node /path/to/gx-devtools/bin/gx-devtools.js init test-project
209
209
 
210
210
  # Test dev server (after linking)
211
211
  cd test-project
212
- npm run dev-http
212
+ pnpm run dev-http
213
213
 
214
214
  # Test build
215
- npm run build
215
+ pnpm run build
216
216
  ```
217
217
 
218
218
  ### Verifying Changes
219
219
 
220
220
  1. Create a fresh test project
221
221
  2. Link the local devtools
222
- 3. Run `npm run dev-http` and verify the app loads
223
- 4. Run `npm run build` and check `dist/` output
222
+ 3. Run `pnpm run dev-http` and verify the app loads
223
+ 4. Run `pnpm run build` and check `dist/` output
224
224
  5. Test dev tools with Ctrl+Shift+D
225
225
 
226
226
  ## Publishing
227
227
 
228
228
  1. Update version in `package.json`
229
229
  2. Ensure all new directories are included (runtime/, template/, socket-events/)
230
- 3. Run `npm publish`
230
+ 3. Run `pnpm publish`
231
231
 
232
232
  ## Dependencies
233
233
 
@@ -78,7 +78,7 @@ if (!isOneShot) {
78
78
  })();
79
79
  } else {
80
80
  // TUI not compiled yet, use traditional CLI
81
- console.log('Note: TUI not yet available. Run "npm run build:tui" to enable interactive mode.');
81
+ console.log('Note: TUI not yet available. Run "pnpm run build:tui" to enable interactive mode.');
82
82
  require("./lib/cli");
83
83
  }
84
84
  } else {
package/bin/lib/cli.js CHANGED
@@ -63,6 +63,12 @@ yargs
63
63
  alias: "y",
64
64
  default: false,
65
65
  },
66
+ local: {
67
+ describe: "Initialize in current directory instead of creating a new one",
68
+ type: "boolean",
69
+ alias: "l",
70
+ default: false,
71
+ },
66
72
  },
67
73
  initCommand
68
74
  )
@@ -322,7 +322,7 @@ async function buildCommand(argv) {
322
322
 
323
323
  const command = [
324
324
  ...envVars,
325
- `npx vite build --config "${viteConfigPath}"`,
325
+ `pnpm exec vite build --config "${viteConfigPath}"`,
326
326
  ].join(" && ");
327
327
 
328
328
  const result = shell.exec(command);
@@ -403,7 +403,7 @@ async function initDatastoreInExistingProject() {
403
403
 
404
404
  // Install new dependencies
405
405
  console.log("📦 Installing dependencies...");
406
- const result = shell.exec("npm install", {
406
+ const result = shell.exec("pnpm install", {
407
407
  cwd: projectPath,
408
408
  silent: false,
409
409
  });
@@ -411,16 +411,16 @@ async function initDatastoreInExistingProject() {
411
411
  if (result.code === 0) {
412
412
  console.log("✅ GxP Datastore added successfully!");
413
413
  console.log("");
414
- console.log("📊 Manage test data with: npm run datastore:add");
415
- console.log("🔍 Scan components for strings: npm run datastore:scan");
416
- console.log("📋 List all store variables: npm run datastore:list");
414
+ console.log("📊 Manage test data with: pnpm run datastore:add");
415
+ console.log("🔍 Scan components for strings: pnpm run datastore:scan");
416
+ console.log("📋 List all store variables: pnpm run datastore:list");
417
417
  console.log("");
418
418
  console.log("💡 Update your components to use the store:");
419
419
  console.log(' import { useGxpStore } from "/src/stores/index.js"');
420
420
  console.log(" const gxpStore = useGxpStore()");
421
421
  } else {
422
422
  console.error(
423
- '❌ Failed to install dependencies. Please run "npm install" manually.'
423
+ '❌ Failed to install dependencies. Please run "pnpm install" manually.'
424
424
  );
425
425
  }
426
426
  } catch (error) {
@@ -50,7 +50,7 @@ function getBrowserExtensionConfig(browser, projectPath, paths, options = {}) {
50
50
  return {
51
51
  name: "FIREFOX",
52
52
  color: "yellow",
53
- command: `npx web-ext run --source-dir "${extensionPath}" --start-url "${startUrl}"`,
53
+ command: `pnpm exec web-ext run --source-dir "${extensionPath}" --start-url "${startUrl}"`,
54
54
  extensionPath,
55
55
  startUrl,
56
56
  };
@@ -127,7 +127,7 @@ function devCommand(argv) {
127
127
 
128
128
  if (!existingCerts) {
129
129
  console.log(
130
- "⚠ SSL certificates not found. Run 'npm run setup-ssl' to enable HTTPS"
130
+ "⚠ SSL certificates not found. Run 'pnpm run setup-ssl' to enable HTTPS"
131
131
  );
132
132
  console.log("🌐 Starting HTTP development server...");
133
133
  useHttps = false;
@@ -280,7 +280,7 @@ function devCommand(argv) {
280
280
  // Vite is always included
281
281
  const viteCommand = [
282
282
  ...envVars,
283
- `npx vite dev --config "${viteConfigPath}"`,
283
+ `pnpm exec vite dev --config "${viteConfigPath}"`,
284
284
  ].join(" && ");
285
285
  processes.push(`"${viteCommand}"`);
286
286
  names.push("VITE");
@@ -288,7 +288,7 @@ function devCommand(argv) {
288
288
 
289
289
  // Socket server (optional)
290
290
  if (withSocket && serverJsPath) {
291
- processes.push(`"npx nodemon \\"${serverJsPath}\\""`);
291
+ processes.push(`"pnpm exec nodemon \\"${serverJsPath}\\""`);
292
292
  names.push("SOCKET");
293
293
  colors.push("green");
294
294
  }
@@ -310,12 +310,12 @@ function devCommand(argv) {
310
310
  // Build the final command
311
311
  if (processes.length > 1) {
312
312
  // Use concurrently to run multiple processes
313
- command = `npx concurrently --names "${names.join(
313
+ command = `pnpm exec concurrently --names "${names.join(
314
314
  ","
315
315
  )}" --prefix-colors "${colors.join(",")}" ${processes.join(" ")}`;
316
316
  } else {
317
317
  // Just run Vite dev server alone
318
- command = [...envVars, `npx vite dev --config "${viteConfigPath}"`].join(
318
+ command = [...envVars, `pnpm exec vite dev --config "${viteConfigPath}"`].join(
319
319
  " && "
320
320
  );
321
321
  }
@@ -45,7 +45,7 @@ function extensionFirefoxCommand() {
45
45
 
46
46
  console.log("🦊 Launching Firefox with extension...");
47
47
  console.log("📁 Extension path:", extensionPath);
48
- shell.exec(`npx web-ext run --source-dir "${extensionPath}"`);
48
+ shell.exec(`pnpm exec web-ext run --source-dir "${extensionPath}"`);
49
49
  }
50
50
 
51
51
  /**
@@ -245,7 +245,7 @@ function extensionBuildCommand() {
245
245
  ? "dist/firefox"
246
246
  : path.join(projectPath, "dist/firefox");
247
247
  shell.exec(
248
- `npx web-ext build --source-dir "${firefoxPath}" --artifacts-dir "${outputDir}"`
248
+ `pnpm exec web-ext build --source-dir "${firefoxPath}" --artifacts-dir "${outputDir}"`
249
249
  );
250
250
  } else {
251
251
  console.log("⚠️ No Firefox extension found to build");
@@ -41,8 +41,9 @@ const {
41
41
  * Copy template files to project
42
42
  * @param {string} projectPath - Target project path
43
43
  * @param {object} paths - Resolved GxP paths
44
+ * @param {boolean} overwrite - If true, overwrite existing files
44
45
  */
45
- function copyTemplateFiles(projectPath, paths) {
46
+ function copyTemplateFiles(projectPath, paths, overwrite = false) {
46
47
  const filesToCopy = [
47
48
  {
48
49
  src: "theme-layouts/SystemLayout.vue",
@@ -133,7 +134,7 @@ function copyTemplateFiles(projectPath, paths) {
133
134
  filesToCopy.forEach((file) => {
134
135
  const srcPath = path.join(paths.templateDir, file.src);
135
136
  const destPath = path.join(projectPath, file.dest);
136
- safeCopyFile(srcPath, destPath, file.desc);
137
+ safeCopyFile(srcPath, destPath, file.desc, overwrite);
137
138
  });
138
139
  }
139
140
 
@@ -141,8 +142,9 @@ function copyTemplateFiles(projectPath, paths) {
141
142
  * Copy extension scripts to project
142
143
  * @param {string} projectPath - Target project path
143
144
  * @param {object} paths - Resolved GxP paths
145
+ * @param {boolean} overwrite - If true, overwrite existing files
144
146
  */
145
- function copyExtensionScripts(projectPath, paths) {
147
+ function copyExtensionScripts(projectPath, paths, overwrite = false) {
146
148
  const scriptsDir = path.join(projectPath, "scripts");
147
149
  if (!fs.existsSync(scriptsDir)) {
148
150
  fs.mkdirSync(scriptsDir, { recursive: true });
@@ -155,7 +157,7 @@ function copyExtensionScripts(projectPath, paths) {
155
157
  );
156
158
  const launchChromeDest = path.join(scriptsDir, "launch-chrome.js");
157
159
  if (fs.existsSync(launchChromeSource)) {
158
- safeCopyFile(launchChromeSource, launchChromeDest, "Chrome launcher script");
160
+ safeCopyFile(launchChromeSource, launchChromeDest, "Chrome launcher script", overwrite);
159
161
  }
160
162
 
161
163
  // Copy pack-chrome.js script
@@ -165,7 +167,7 @@ function copyExtensionScripts(projectPath, paths) {
165
167
  );
166
168
  const packChromeDest = path.join(scriptsDir, "pack-chrome.js");
167
169
  if (fs.existsSync(packChromeSource)) {
168
- safeCopyFile(packChromeSource, packChromeDest, "Chrome packaging script");
170
+ safeCopyFile(packChromeSource, packChromeDest, "Chrome packaging script", overwrite);
169
171
  }
170
172
 
171
173
  // Copy socket events directory
@@ -182,7 +184,7 @@ function copyExtensionScripts(projectPath, paths) {
182
184
  eventFiles.forEach((file) => {
183
185
  const srcPath = path.join(socketEventsSource, file);
184
186
  const destPath = path.join(socketEventsDest, file);
185
- safeCopyFile(srcPath, destPath, `Socket event: ${file}`);
187
+ safeCopyFile(srcPath, destPath, `Socket event: ${file}`, overwrite);
186
188
  });
187
189
  }
188
190
  }
@@ -260,7 +262,7 @@ function launchDevServer(projectPath, options = {}) {
260
262
 
261
263
  console.log(`\n🚀 Starting development server...`);
262
264
 
263
- const child = spawn("npm", args, {
265
+ const child = spawn("pnpm", args, {
264
266
  cwd: projectPath,
265
267
  stdio: "inherit",
266
268
  shell: true,
@@ -291,8 +293,9 @@ function launchBrowserExtension(projectPath, browser) {
291
293
  * Run interactive configuration after project creation
292
294
  * @param {string} projectPath - Path to project directory
293
295
  * @param {string} initialName - Initial project name from CLI
296
+ * @param {boolean} isLocal - Whether initialized in current directory
294
297
  */
295
- async function runInteractiveConfig(projectPath, initialName) {
298
+ async function runInteractiveConfig(projectPath, initialName, isLocal = false) {
296
299
  console.log("");
297
300
  console.log("─".repeat(50));
298
301
  console.log("📝 Configure Your Plugin");
@@ -338,9 +341,9 @@ async function runInteractiveConfig(projectPath, initialName) {
338
341
  if (availableProviders.length === 0) {
339
342
  console.log(" ⚠️ No AI providers available.");
340
343
  console.log(" To enable AI scaffolding, set up one of:");
341
- console.log(" • Claude CLI: npm install -g @anthropic-ai/claude-code && claude login");
342
- console.log(" • Codex CLI: npm install -g @openai/codex && codex auth");
343
- console.log(" • Gemini CLI: npm install -g @google/gemini-cli && gemini");
344
+ console.log(" • Claude CLI: pnpm install -g @anthropic-ai/claude-code && claude login");
345
+ console.log(" • Codex CLI: pnpm install -g @openai/codex && codex auth");
346
+ console.log(" • Gemini CLI: pnpm install -g @google/gemini-cli && gemini");
344
347
  console.log(" • Gemini API: export GEMINI_API_KEY=your_key");
345
348
  console.log("");
346
349
  aiChoice = "skip";
@@ -402,7 +405,7 @@ async function runInteractiveConfig(projectPath, initialName) {
402
405
 
403
406
  const sslChoice = await arrowSelectPrompt("Set up SSL certificates for HTTPS development?", [
404
407
  { label: "Yes, set up SSL", value: "yes", description: "Recommended for full feature access" },
405
- { label: "Skip SSL setup", value: "no", description: "Can be set up later with npm run setup-ssl" },
408
+ { label: "Skip SSL setup", value: "no", description: "Can be set up later with pnpm run setup-ssl" },
406
409
  ]);
407
410
 
408
411
  let sslSetup = false;
@@ -466,7 +469,7 @@ async function runInteractiveConfig(projectPath, initialName) {
466
469
  devProcess = launchDevServer(projectPath, { withMock: true, noHttps: !sslSetup });
467
470
  } else {
468
471
  // Print final instructions
469
- printFinalInstructions(projectPath, appName, sslSetup);
472
+ printFinalInstructions(projectPath, appName, sslSetup, isLocal);
470
473
  }
471
474
 
472
475
  return devProcess;
@@ -477,8 +480,9 @@ async function runInteractiveConfig(projectPath, initialName) {
477
480
  * @param {string} projectPath - Project path
478
481
  * @param {string} projectName - Project name
479
482
  * @param {boolean} sslSetup - Whether SSL was set up
483
+ * @param {boolean} isLocal - Whether initialized in current directory
480
484
  */
481
- function printFinalInstructions(projectPath, projectName, sslSetup) {
485
+ function printFinalInstructions(projectPath, projectName, sslSetup, isLocal = false) {
482
486
  console.log("");
483
487
  console.log("─".repeat(50));
484
488
  console.log("✅ Project setup complete!");
@@ -496,13 +500,15 @@ function printFinalInstructions(projectPath, projectName, sslSetup) {
496
500
  console.log(" • app-manifest.json - Plugin configuration");
497
501
  console.log("");
498
502
  console.log("🚀 To start development:");
499
- console.log(` cd ${projectName}`);
503
+ if (!isLocal) {
504
+ console.log(` cd ${projectName}`);
505
+ }
500
506
  if (sslSetup) {
501
- console.log(" npm run dev # HTTPS with TUI");
502
- console.log(" npm run dev-http # HTTP only");
507
+ console.log(" pnpm run dev # HTTPS with TUI");
508
+ console.log(" pnpm run dev-http # HTTP only");
503
509
  } else {
504
- console.log(" npm run dev-http # HTTP dev server");
505
- console.log(" npm run setup-ssl # Then npm run dev for HTTPS");
510
+ console.log(" pnpm run dev-http # HTTP dev server");
511
+ console.log(" pnpm run setup-ssl # Then pnpm run dev for HTTPS");
506
512
  }
507
513
  console.log("");
508
514
  console.log("📚 Documentation: https://docs.gramercytech.com/gxp-toolkit");
@@ -517,56 +523,75 @@ async function initCommand(argv) {
517
523
  const hasPackageJson = fs.existsSync(path.join(currentDir, "package.json"));
518
524
  let projectPath = currentDir;
519
525
  let projectName;
526
+ const overwrite = argv.local && argv.yes;
520
527
 
521
- // Handle existing project update
522
- if (hasPackageJson && !argv.name) {
523
- console.log("Updating existing project...");
524
- updateExistingProject(projectPath);
525
- console.log("✅ Project updated!");
526
- return;
527
- }
528
+ // Handle --local flag: initialize in current directory
529
+ if (argv.local) {
530
+ projectPath = currentDir;
531
+ projectName = argv.name || path.basename(currentDir);
528
532
 
529
- // New project - require a name
530
- if (!argv.name) {
531
- // In non-interactive mode, name is required
532
- if (argv.yes) {
533
- console.error("❌ Project name is required when using --yes flag!");
534
- console.error(" Usage: gxdev init <project-name> --yes");
535
- process.exit(1);
536
- }
537
533
  console.log("");
538
- console.log("🚀 GxP Plugin Creator");
534
+ console.log(`📁 Initializing project in current directory: ${projectName}`);
535
+ if (overwrite) {
536
+ console.log("⚠️ Overwrite mode enabled - existing files will be replaced");
537
+ }
539
538
  console.log("─".repeat(40));
540
- console.log("");
541
- projectName = await promptUser("📝 Project name: ");
542
- if (!projectName) {
543
- console.error(" Project name is required!");
539
+ } else {
540
+ // Handle existing project update
541
+ if (hasPackageJson && !argv.name) {
542
+ console.log("Updating existing project...");
543
+ updateExistingProject(projectPath);
544
+ console.log("✅ Project updated!");
545
+ return;
546
+ }
547
+
548
+ // New project - require a name
549
+ if (!argv.name) {
550
+ // In non-interactive mode, name is required
551
+ if (argv.yes) {
552
+ console.error("❌ Project name is required when using --yes flag!");
553
+ console.error(" Usage: gxdev init <project-name> --yes");
554
+ process.exit(1);
555
+ }
556
+ console.log("");
557
+ console.log("🚀 GxP Plugin Creator");
558
+ console.log("─".repeat(40));
559
+ console.log("");
560
+ projectName = await promptUser("📝 Project name: ");
561
+ if (!projectName) {
562
+ console.error("❌ Project name is required!");
563
+ process.exit(1);
564
+ }
565
+ } else {
566
+ projectName = argv.name;
567
+ }
568
+
569
+ // Create project directory
570
+ projectPath = path.join(currentDir, projectName);
571
+ if (fs.existsSync(projectPath)) {
572
+ console.error(`\n❌ Directory ${projectName} already exists!`);
544
573
  process.exit(1);
545
574
  }
546
- } else {
547
- projectName = argv.name;
548
- }
549
575
 
550
- // Create project directory
551
- projectPath = path.join(currentDir, projectName);
552
- if (fs.existsSync(projectPath)) {
553
- console.error(`\n❌ Directory ${projectName} already exists!`);
554
- process.exit(1);
576
+ console.log("");
577
+ console.log(`📁 Creating project: ${projectName}`);
578
+ console.log("─".repeat(40));
579
+ fs.mkdirSync(projectPath, { recursive: true });
555
580
  }
556
581
 
557
- console.log("");
558
- console.log(`📁 Creating project: ${projectName}`);
559
- console.log("─".repeat(40));
560
- fs.mkdirSync(projectPath, { recursive: true });
561
-
562
- // Create package.json
582
+ // Create package.json (only if it doesn't exist or overwrite is enabled)
563
583
  const initialDescription = argv.description || "A GxP kiosk plugin";
564
- createPackageJson(projectPath, projectName, initialDescription);
584
+ const packageJsonPath = path.join(projectPath, "package.json");
585
+ if (!fs.existsSync(packageJsonPath) || overwrite) {
586
+ createPackageJson(projectPath, projectName, initialDescription);
587
+ } else {
588
+ console.log("⏭️ Skipping package.json (already exists)");
589
+ }
565
590
 
566
591
  // Copy template files
567
592
  const paths = resolveGxPaths();
568
- copyTemplateFiles(projectPath, paths);
569
- copyExtensionScripts(projectPath, paths);
593
+ copyTemplateFiles(projectPath, paths, overwrite);
594
+ copyExtensionScripts(projectPath, paths, overwrite);
570
595
  createSupportingFiles(projectPath);
571
596
 
572
597
  // Install dependencies
@@ -581,19 +606,19 @@ async function initCommand(argv) {
581
606
  updateAppManifest(projectPath, projectName, initialDescription);
582
607
  const provider = argv.provider || "gemini"; // Default to gemini for backward compatibility
583
608
  await runAIScaffolding(projectPath, projectName, initialDescription, argv.build, provider);
584
- printFinalInstructions(projectPath, projectName, false);
609
+ printFinalInstructions(projectPath, projectName, false, argv.local);
585
610
  return;
586
611
  }
587
612
 
588
613
  // If --yes flag provided, skip interactive configuration
589
614
  if (argv.yes) {
590
615
  updateAppManifest(projectPath, projectName, initialDescription);
591
- printFinalInstructions(projectPath, projectName, false);
616
+ printFinalInstructions(projectPath, projectName, false, argv.local);
592
617
  return;
593
618
  }
594
619
 
595
620
  // Run interactive configuration
596
- await runInteractiveConfig(projectPath, projectName);
621
+ await runInteractiveConfig(projectPath, projectName, argv.local);
597
622
  }
598
623
 
599
624
  module.exports = {
@@ -140,7 +140,7 @@ async function sendSocketEvent(eventName, identifier) {
140
140
  if (error.code === "ECONNREFUSED") {
141
141
  console.error("❌ Cannot connect to Socket.IO server");
142
142
  console.log("💡 Make sure the server is running:");
143
- console.log(" npm run dev");
143
+ console.log(" pnpm run dev");
144
144
  console.log(" or");
145
145
  console.log(" nodemon server.js");
146
146
  } else {
@@ -33,11 +33,11 @@ function setupSSLCommand() {
33
33
  console.log("🔒 Your development server will now use HTTPS");
34
34
  console.log("📁 Certificates stored in .certs/ directory");
35
35
  console.log(
36
- "🚀 Run 'npm run dev' to start HTTPS development with Socket.IO"
36
+ "🚀 Run 'pnpm run dev' to start HTTPS development with Socket.IO"
37
37
  );
38
38
  } else {
39
39
  console.log(
40
- "❌ SSL setup failed. You can still use HTTP with 'npm run dev-http'"
40
+ "❌ SSL setup failed. You can still use HTTP with 'pnpm run dev-http'"
41
41
  );
42
42
  }
43
43
  }
@@ -32,8 +32,8 @@ export function startTUI(options: TUIOptions = {}) {
32
32
  console.error('Try running the command directly from your terminal, not from a script or pipe.');
33
33
  console.error('');
34
34
  console.error('Alternatively, use the non-TUI commands:');
35
- console.error(' npm run dev # Start Vite dev server');
36
- console.error(' npm run dev-http # Start HTTP dev server');
35
+ console.error(' pnpm run dev # Start Vite dev server');
36
+ console.error(' pnpm run dev-http # Start HTTP dev server');
37
37
  console.error(' gxdev socket list # List socket events');
38
38
  process.exit(1);
39
39
  return;
@@ -93,7 +93,7 @@ export function getAvailableProviders(): AIProviderInfo[] {
93
93
  id: 'claude',
94
94
  name: 'Claude',
95
95
  available: false,
96
- reason: 'Install: npm i -g @anthropic-ai/claude-code && claude login',
96
+ reason: 'Install: pnpm i -g @anthropic-ai/claude-code && claude login',
97
97
  });
98
98
  }
99
99
 
@@ -109,7 +109,7 @@ export function getAvailableProviders(): AIProviderInfo[] {
109
109
  id: 'codex',
110
110
  name: 'Codex',
111
111
  available: false,
112
- reason: 'Install: npm i -g @openai/codex && codex auth',
112
+ reason: 'Install: pnpm i -g @openai/codex && codex auth',
113
113
  });
114
114
  }
115
115
 
@@ -144,7 +144,7 @@ export function getAvailableProviders(): AIProviderInfo[] {
144
144
  id: 'gemini',
145
145
  name: 'Gemini',
146
146
  available: false,
147
- reason: 'Install: npm i -g @google/gemini-cli && gemini',
147
+ reason: 'Install: pnpm i -g @google/gemini-cli && gemini',
148
148
  });
149
149
  }
150
150
  } else {
@@ -152,7 +152,7 @@ export function getAvailableProviders(): AIProviderInfo[] {
152
152
  id: 'gemini',
153
153
  name: 'Gemini',
154
154
  available: false,
155
- reason: 'Install: npm i -g @google/gemini-cli && gemini',
155
+ reason: 'Install: pnpm i -g @google/gemini-cli && gemini',
156
156
  });
157
157
  }
158
158
 
@@ -102,8 +102,8 @@ export function startExtension(options: ExtensionOptions): void {
102
102
  const config: ServiceConfig = {
103
103
  id: serviceId,
104
104
  name: 'Firefox Extension',
105
- command: 'npx',
106
- args: ['web-ext', 'run', '--source-dir', extensionPath, '--start-url', startUrl],
105
+ command: 'pnpm',
106
+ args: ['exec', 'web-ext', 'run', '--source-dir', extensionPath, '--start-url', startUrl],
107
107
  cwd,
108
108
  env: {
109
109
  FORCE_COLOR: '1',
@@ -89,8 +89,8 @@ export function startVite(options: ViteOptions = {}): void {
89
89
  const config: ServiceConfig = {
90
90
  id: 'vite',
91
91
  name: 'Vite',
92
- command: 'npx',
93
- args: ['vite', 'dev', '--config', viteConfigPath],
92
+ command: 'pnpm',
93
+ args: ['exec', 'vite', 'dev', '--config', viteConfigPath],
94
94
  cwd,
95
95
  env,
96
96
  };
@@ -162,7 +162,7 @@ async function checkClaudeAvailable() {
162
162
  return {
163
163
  available: false,
164
164
  reason:
165
- "Claude CLI not installed. Install with: npm install -g @anthropic-ai/claude-code",
165
+ "Claude CLI not installed. Install with: pnpm install -g @anthropic-ai/claude-code",
166
166
  };
167
167
  }
168
168
  }
@@ -180,7 +180,7 @@ async function checkCodexAvailable() {
180
180
  return {
181
181
  available: false,
182
182
  reason:
183
- "Codex CLI not installed. Install with: npm install -g @openai/codex",
183
+ "Codex CLI not installed. Install with: pnpm install -g @openai/codex",
184
184
  };
185
185
  }
186
186
  }
@@ -222,7 +222,7 @@ async function checkGeminiAvailable() {
222
222
  available: false,
223
223
  reason:
224
224
  "Gemini requires one of:\n" +
225
- " • Gemini CLI logged in (npm i -g @google/gemini-cli && gemini), or\n" +
225
+ " • Gemini CLI logged in (pnpm i -g @google/gemini-cli && gemini), or\n" +
226
226
  " • GEMINI_API_KEY environment variable, or\n" +
227
227
  " • gcloud CLI logged in (gcloud auth login)",
228
228
  };
@@ -16,10 +16,15 @@ const { loadGlobalConfig } = require("./paths");
16
16
 
17
17
  /**
18
18
  * Copies a file from source to destination, creating directories if needed
19
+ * @param {string} src - Source file path
20
+ * @param {string} dest - Destination file path
21
+ * @param {string} description - Description for logging
22
+ * @param {boolean} overwrite - If true, overwrite existing files
19
23
  */
20
- function safeCopyFile(src, dest, description) {
21
- if (!fs.existsSync(dest)) {
22
- console.log(`Creating ${description}`);
24
+ function safeCopyFile(src, dest, description, overwrite = false) {
25
+ const exists = fs.existsSync(dest);
26
+ if (!exists || overwrite) {
27
+ console.log(`${exists ? 'Overwriting' : 'Creating'} ${description}`);
23
28
  const destDir = path.dirname(dest);
24
29
  if (!fs.existsSync(destDir)) {
25
30
  fs.mkdirSync(destDir, { recursive: true });
@@ -104,9 +109,9 @@ function installDependencies(projectPath) {
104
109
 
105
110
  try {
106
111
  process.chdir(projectPath);
107
- const result = shell.exec("npm install", { silent: false });
112
+ const result = shell.exec("pnpm install", { silent: false });
108
113
  if (result.code !== 0) {
109
- console.warn("⚠ npm install completed with warnings");
114
+ console.warn("⚠ pnpm install completed with warnings");
110
115
  }
111
116
  } finally {
112
117
  process.chdir(currentDir);
@@ -25,7 +25,7 @@ function ensureMkcertInstalled() {
25
25
  }
26
26
 
27
27
  console.log("Installing mkcert globally...");
28
- const result = shell.exec("npm install -g mkcert", { silent: true });
28
+ const result = shell.exec("pnpm install -g mkcert", { silent: true });
29
29
 
30
30
  if (result.code === 0) {
31
31
  console.log("✓ mkcert installed successfully");
@@ -135,7 +135,7 @@ function generateSSLCertificates(projectPath) {
135
135
  let mkcertCmd = "mkcert";
136
136
  if (!isMkcertInstalled()) {
137
137
  // Use local mkcert via npx
138
- mkcertCmd = "npx mkcert";
138
+ mkcertCmd = "pnpm exec mkcert";
139
139
  }
140
140
 
141
141
  // Change to certs directory and generate certificates
package/dist/tui/index.js CHANGED
@@ -24,8 +24,8 @@ export function startTUI(options = {}) {
24
24
  console.error('Try running the command directly from your terminal, not from a script or pipe.');
25
25
  console.error('');
26
26
  console.error('Alternatively, use the non-TUI commands:');
27
- console.error(' npm run dev # Start Vite dev server');
28
- console.error(' npm run dev-http # Start HTTP dev server');
27
+ console.error(' pnpm run dev # Start Vite dev server');
28
+ console.error(' pnpm run dev-http # Start HTTP dev server');
29
29
  console.error(' gxdev socket list # List socket events');
30
30
  process.exit(1);
31
31
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../bin/lib/tui/index.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,mEAAmE;AACnE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AAO1D,MAAM,UAAU,QAAQ,CAAC,UAAsB,EAAE;IAC/C,qEAAqE;IACrE,sBAAsB;IACtB,+BAA+B;IAC/B,qCAAqC;IACrC,4BAA4B;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;IAExC,qEAAqE;IACrE,gEAAgE;IAChE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;QAC7E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACjG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC9D,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAC9B,KAAC,GAAG,IACF,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,GAClB,CACH,CAAC;IAEF,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACxB,iDAAiD;QACjD,cAAc,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,kCAAkC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrF,IAAI,MAAM,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;AACb,CAAC;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../bin/lib/tui/index.tsx"],"names":[],"mappings":";;AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,mEAAmE;AACnE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;AAO1D,MAAM,UAAU,QAAQ,CAAC,UAAsB,EAAE;IAC/C,qEAAqE;IACrE,sBAAsB;IACtB,+BAA+B;IAC/B,qCAAqC;IACrC,4BAA4B;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;IAExC,qEAAqE;IACrE,gEAAgE;IAChE,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;QAC7E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,iFAAiF,CAAC,CAAC;QACjG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IAED,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAC9B,KAAC,GAAG,IACF,SAAS,EAAE,OAAO,CAAC,SAAS,EAC5B,IAAI,EAAE,OAAO,CAAC,IAAI,GAClB,CACH,CAAC;IAEF,aAAa,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;QACxB,iDAAiD;QACjD,cAAc,CAAC,YAAY,EAAE,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,kCAAkC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrF,IAAI,MAAM,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;AACb,CAAC;AAED,eAAe,QAAQ,CAAC"}
@@ -69,7 +69,7 @@ export function getAvailableProviders() {
69
69
  id: 'claude',
70
70
  name: 'Claude',
71
71
  available: false,
72
- reason: 'Install: npm i -g @anthropic-ai/claude-code && claude login',
72
+ reason: 'Install: pnpm i -g @anthropic-ai/claude-code && claude login',
73
73
  });
74
74
  }
75
75
  // Check Codex CLI
@@ -85,7 +85,7 @@ export function getAvailableProviders() {
85
85
  id: 'codex',
86
86
  name: 'Codex',
87
87
  available: false,
88
- reason: 'Install: npm i -g @openai/codex && codex auth',
88
+ reason: 'Install: pnpm i -g @openai/codex && codex auth',
89
89
  });
90
90
  }
91
91
  // Check Gemini (CLI, API key, or gcloud)
@@ -122,7 +122,7 @@ export function getAvailableProviders() {
122
122
  id: 'gemini',
123
123
  name: 'Gemini',
124
124
  available: false,
125
- reason: 'Install: npm i -g @google/gemini-cli && gemini',
125
+ reason: 'Install: pnpm i -g @google/gemini-cli && gemini',
126
126
  });
127
127
  }
128
128
  }
@@ -131,7 +131,7 @@ export function getAvailableProviders() {
131
131
  id: 'gemini',
132
132
  name: 'Gemini',
133
133
  available: false,
134
- reason: 'Install: npm i -g @google/gemini-cli && gemini',
134
+ reason: 'Install: pnpm i -g @google/gemini-cli && gemini',
135
135
  });
136
136
  }
137
137
  return providers;
@@ -1 +1 @@
1
- {"version":3,"file":"AIService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/AIService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AIService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/AIService.ts"],"names":[],"mappings":"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"}
@@ -80,8 +80,8 @@ export function startExtension(options) {
80
80
  const config = {
81
81
  id: serviceId,
82
82
  name: 'Firefox Extension',
83
- command: 'npx',
84
- args: ['web-ext', 'run', '--source-dir', extensionPath, '--start-url', startUrl],
83
+ command: 'pnpm',
84
+ args: ['exec', 'web-ext', 'run', '--source-dir', extensionPath, '--start-url', startUrl],
85
85
  cwd,
86
86
  env: {
87
87
  FORCE_COLOR: '1',
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/ExtensionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtensionService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/ExtensionService.ts"],"names":[],"mappings":"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"}
@@ -73,8 +73,8 @@ export function startVite(options = {}) {
73
73
  const config = {
74
74
  id: 'vite',
75
75
  name: 'Vite',
76
- command: 'npx',
77
- args: ['vite', 'dev', '--config', viteConfigPath],
76
+ command: 'pnpm',
77
+ args: ['exec', 'vite', 'dev', '--config', viteConfigPath],
78
78
  cwd,
79
79
  env,
80
80
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ViteService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/ViteService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ViteService.js","sourceRoot":"","sources":["../../../bin/lib/tui/services/ViteService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gxp-dev/tools",
3
- "version": "2.0.34",
3
+ "version": "2.0.36",
4
4
  "description": "Dev tools to create platform plugins",
5
5
  "type": "commonjs",
6
6
  "publishConfig": {
@@ -17,19 +17,6 @@
17
17
  "browser-extensions",
18
18
  "scripts"
19
19
  ],
20
- "scripts": {
21
- "test": "echo \"Error: no test specified\" && exit 1",
22
- "dev": "concurrently 'vite dev' 'nodemon config/server.js'",
23
- "dev-app": "vite dev",
24
- "ext:firefox": "web-ext run --source-dir browser-extensions/firefox",
25
- "ext:firefox-build": "web-ext build --source-dir browser-extensions/firefox --artifacts-dir dist/firefox",
26
- "ext:chrome": "node scripts/launch-chrome.js",
27
- "ext:chrome-pack": "node scripts/pack-chrome.js",
28
- "ext:install": "npm run ext:firefox & npm run ext:chrome",
29
- "ext:build": "npm run ext:firefox-build && npm run ext:chrome-pack",
30
- "build:tui": "tsc -p tsconfig.tui.json && echo '{\"type\":\"module\"}' > dist/tui/package.json",
31
- "dev:tui": "tsx watch bin/lib/tui/index.tsx"
32
- },
33
20
  "repository": {
34
21
  "type": "git",
35
22
  "url": "git+ssh://git@github.com/GramercyTech/gx-devtools.git"
@@ -53,37 +40,55 @@
53
40
  "dependencies": {
54
41
  "@faker-js/faker": "^9.9.0",
55
42
  "@fal-works/esbuild-plugin-global-externals": "^2.1.2",
56
- "@gramercytech/gx-componentkit": "^1.0.8",
57
- "@vitejs/plugin-vue": "^5.1.4",
43
+ "@gramercytech/gx-componentkit": "^1.0.23",
44
+ "@vitejs/plugin-vue": "^5.2.4",
58
45
  "archiver": "^7.0.1",
59
- "chrome-launcher": "^1.1.2",
60
- "concurrently": "^9.0.1",
61
- "cors": "^2.8.5",
62
- "dotenv": "^16.4.5",
63
- "express": "^4.21.0",
64
- "ink": "^5.0.1",
46
+ "chrome-launcher": "^1.2.1",
47
+ "concurrently": "^9.2.1",
48
+ "cors": "^2.8.6",
49
+ "dotenv": "^16.6.1",
50
+ "express": "^4.22.1",
51
+ "ink": "^5.2.1",
65
52
  "ink-text-input": "^6.0.0",
66
53
  "json-schema-faker": "^0.5.9",
67
54
  "mkcert": "^3.2.0",
68
- "nodemon": "^3.1.7",
69
- "open": "^10.0.0",
55
+ "nodemon": "^3.1.11",
56
+ "open": "^10.2.0",
70
57
  "pinia": "^3.0.4",
71
- "react": "^18.2.0",
72
- "rollup-plugin-external-globals": "^0.12.0",
58
+ "react": "^18.3.1",
59
+ "rollup-plugin-external-globals": "^0.12.1",
73
60
  "shelljs": "^0.8.5",
74
- "socket.io": "^4.8.0",
75
- "socket.io-client": "^4.8.0",
76
- "vite": "^5.4.8",
77
- "vue": "^3.5.8",
78
- "web-ext": "^8.2.0",
61
+ "socket.io": "^4.8.3",
62
+ "socket.io-client": "^4.8.3",
63
+ "vite": "^5.4.21",
64
+ "vue": "^3.5.27",
65
+ "web-ext": "^8.10.0",
79
66
  "yargs": "^17.7.2"
80
67
  },
81
68
  "devDependencies": {
82
- "@types/react": "^18.2.0",
69
+ "@types/react": "^18.3.28",
70
+ "@vitest/coverage-v8": "^2.1.9",
83
71
  "concurrently": "^9.0.1",
72
+ "memfs": "^4.56.10",
84
73
  "mkcert": "^3.2.0",
85
74
  "nodemon": "^3.1.7",
86
- "tsx": "^4.0.0",
87
- "typescript": "^5.0.0"
75
+ "tsx": "^4.21.0",
76
+ "typescript": "^5.9.3",
77
+ "vitest": "^2.1.9"
78
+ },
79
+ "scripts": {
80
+ "test": "vitest run",
81
+ "test:watch": "vitest",
82
+ "test:coverage": "vitest run --coverage",
83
+ "dev": "concurrently 'vite dev' 'nodemon config/server.js'",
84
+ "dev-app": "vite dev",
85
+ "ext:firefox": "web-ext run --source-dir browser-extensions/firefox",
86
+ "ext:firefox-build": "web-ext build --source-dir browser-extensions/firefox --artifacts-dir dist/firefox",
87
+ "ext:chrome": "node scripts/launch-chrome.js",
88
+ "ext:chrome-pack": "node scripts/pack-chrome.js",
89
+ "ext:install": "pnpm run ext:firefox & pnpm run ext:chrome",
90
+ "ext:build": "pnpm run ext:firefox-build && pnpm run ext:chrome-pack",
91
+ "build:tui": "tsc -p tsconfig.tui.json && echo '{\"type\":\"module\"}' > dist/tui/package.json",
92
+ "dev:tui": "tsx watch bin/lib/tui/index.tsx"
88
93
  }
89
- }
94
+ }
@@ -316,8 +316,8 @@ This is the main configuration file. Changes hot-reload during development:
316
316
 
317
317
  ```bash
318
318
  # Start development server
319
- npm run dev # HTTPS with Socket.IO
320
- npm run dev-http # HTTP only
319
+ pnpm run dev # HTTPS with Socket.IO
320
+ pnpm run dev-http # HTTP only
321
321
 
322
322
  # Test socket events
323
323
  gxdev socket list # List available events
@@ -6,13 +6,13 @@ This project was created with `@gxp-dev/tools` and includes the `@gramercytech/g
6
6
 
7
7
  ```bash
8
8
  # Start HTTP development server
9
- npm run dev-http
9
+ pnpm run dev-http
10
10
 
11
11
  # Start HTTPS development server with Socket.IO
12
- npm run dev
12
+ pnpm run dev
13
13
 
14
14
  # Build for production
15
- npm run build
15
+ pnpm run build
16
16
  ```
17
17
 
18
18
  ## Project Structure
@@ -85,16 +85,16 @@ You can customize these layouts to match your kiosk's design.
85
85
 
86
86
  | Script | Description |
87
87
  |--------|-------------|
88
- | `npm run dev` | Start HTTPS dev server with Socket.IO |
89
- | `npm run dev-app` | Start HTTPS dev server only |
90
- | `npm run dev-http` | Start HTTP dev server (no SSL) |
91
- | `npm run build` | Build for production |
92
- | `npm run setup-ssl` | Generate SSL certificates |
93
- | `npm run socket:list` | List available socket events |
94
- | `npm run socket:send` | Send test socket events |
95
- | `npm run assets:list` | List development assets |
96
- | `npm run assets:init` | Initialize asset directories |
97
- | `npm run assets:generate` | Generate placeholder images |
88
+ | `pnpm run dev` | Start HTTPS dev server with Socket.IO |
89
+ | `pnpm run dev-app` | Start HTTPS dev server only |
90
+ | `pnpm run dev-http` | Start HTTP dev server (no SSL) |
91
+ | `pnpm run build` | Build for production |
92
+ | `pnpm run setup-ssl` | Generate SSL certificates |
93
+ | `pnpm run socket:list` | List available socket events |
94
+ | `pnpm run socket:send` | Send test socket events |
95
+ | `pnpm run assets:list` | List development assets |
96
+ | `pnpm run assets:init` | Initialize asset directories |
97
+ | `pnpm run assets:generate` | Generate placeholder images |
98
98
 
99
99
  ### Dev Tools Modal
100
100
 
@@ -257,10 +257,10 @@ Test real-time features with socket simulation:
257
257
 
258
258
  ```bash
259
259
  # List available socket events
260
- npm run socket:list
260
+ pnpm run socket:list
261
261
 
262
262
  # Send a socket event
263
- npm run socket:send
263
+ pnpm run socket:send
264
264
 
265
265
  # Send to specific channel
266
266
  gxdev socket send --event SocialStreamPostCreated --identifier "stream_123"
@@ -272,13 +272,13 @@ Socket event templates are in `socket-events/` directory. Add your own JSON file
272
272
 
273
273
  ```bash
274
274
  # List all development assets
275
- npm run assets:list
275
+ pnpm run assets:list
276
276
 
277
277
  # Initialize asset directories
278
- npm run assets:init
278
+ pnpm run assets:init
279
279
 
280
280
  # Generate placeholder images (requires ImageMagick)
281
- npm run assets:generate
281
+ pnpm run assets:generate
282
282
  gxdev assets generate --size 800x600 --name product-image
283
283
  gxdev assets generate --name logo --size 200x200 --color "#FF5722" --text "My Logo"
284
284
  ```
@@ -297,7 +297,7 @@ sudo apt-get install imagemagick
297
297
  ## Building for Production
298
298
 
299
299
  ```bash
300
- npm run build
300
+ pnpm run build
301
301
  ```
302
302
 
303
303
  This creates a `dist/` folder with: