@codenotch/codenotch.cli 1.0.49 → 1.0.51

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.
@@ -11,7 +11,7 @@ function registerDev(react) {
11
11
  .command('dev [app]')
12
12
  .description('Start the Vite dev server of an app, with hot reload on the project sources. By name; the only app when omitted.')
13
13
  .option('-p, --port <port>', 'port of the dev server (default 5173)', (value) => parseInt(value, 10), 5173)
14
- .option('-c, --cluster <url>', 'cluster the app will talk to, exposed to the page through /api/env')
14
+ .option('-c, --cluster <url>', 'cluster the app will talk to, exposed to the page through /api/env (default: the local runtime)')
15
15
  .option('--no-open', 'do not open the browser once the server is up')
16
16
  .addHelpText('after', `
17
17
  Examples:
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/commands/react/dev.ts"],"names":[],"mappings":";;;;;AAIA,kCA0BC;AA7BD,wEAAgD;AAChD,qCAA4C;AAE5C,SAAgB,WAAW,CAAC,KAAc;IACtC,KAAK;SACA,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,kHAAkH,CAAC;SAC/H,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;SAClH,MAAM,CAAC,qBAAqB,EAAE,oEAAoE,CAAC;SACnG,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC;SACpE,WAAW,CAAC,OAAO,EAAE;;;;;CAK7B,CAAC;SACO,MAAM,CAAC,KAAK,EAAE,MAA0B,EAAE,OAA0D,EAAE,EAAE;QAErG,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,oBAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACvI,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAChC,CAAC;IACL,CAAC,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../../src/commands/react/dev.ts"],"names":[],"mappings":";;;;;AAIA,kCA0BC;AA7BD,wEAAgD;AAChD,qCAA4C;AAE5C,SAAgB,WAAW,CAAC,KAAc;IACtC,KAAK;SACA,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,kHAAkH,CAAC;SAC/H,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC;SAClH,MAAM,CAAC,qBAAqB,EAAE,iGAAiG,CAAC;SAChI,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC;SACpE,WAAW,CAAC,OAAO,EAAE;;;;;CAK7B,CAAC;SACO,MAAM,CAAC,KAAK,EAAE,MAA0B,EAAE,OAA0D,EAAE,EAAE;QAErG,MAAM,GAAG,GAAG,MAAM,IAAA,yBAAgB,EAAC,MAAM,CAAC,CAAC;QAC3C,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,oBAAU,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACvI,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAChC,CAAC;IACL,CAAC,CAAC,CAAC;AACX,CAAC"}
@@ -13,7 +13,7 @@ export interface IBuildOptions {
13
13
  pwa?: boolean;
14
14
  }
15
15
  export default abstract class BuildUtils {
16
- static readonly CN_REACT_VERSION = "2.0.3";
16
+ static readonly CN_REACT_VERSION = "2.0.4";
17
17
  /** Root of the Codenotch project a folder belongs to, walking up to the closest manifest.json */
18
18
  static findWorkspace(fromDir?: string): string | undefined;
19
19
  static findWorkspaceFromFile(childPath: string): string | undefined;
@@ -65,6 +65,24 @@ export default abstract class BuildUtils {
65
65
  pwa?: boolean;
66
66
  }): Promise<string | undefined>;
67
67
  static buildApp2(appFilePath: string): Promise<string>;
68
+ /**
69
+ * Path of the workspace's own Vite binary, when the workspace 'node_modules' provides
70
+ * everything a staged app build needs — vite, its react plugin, react itself, and a sass
71
+ * compiler when the project holds scss. The staged builds and the dev server then run
72
+ * without any 'npm install': the staging folders live under the workspace, so Node
73
+ * resolution reaches '<workspace>/node_modules' on its own. undefined = install needed.
74
+ */
75
+ private static findWorkspaceVite;
76
+ /**
77
+ * Runs the Vite build of a staged app. When the workspace 'node_modules' already provides
78
+ * everything (see findWorkspaceVite) there is NO 'npm install' at all: the staging keeps no
79
+ * 'node_modules' of its own, and Node resolution walks up from '.codenotch/<staging>' into
80
+ * the workspace — same resolved versions as the project, no network. Otherwise falls back
81
+ * to 'npm install' + 'npm run build' inside the staging.
82
+ */
83
+ private static runStagedBuild;
84
+ /** Empties a staging folder except its 'node_modules', kept as an install cache between builds */
85
+ private static cleanStagingKeepingModules;
68
86
  private static createIndexJsx;
69
87
  /**
70
88
  * The static entry: the environment is baked in at build time (codenotch.env.json, bundled by
@@ -104,6 +122,32 @@ export default abstract class BuildUtils {
104
122
  types: string[];
105
123
  };
106
124
  private static createTsConfig;
125
+ /**
126
+ * A Vite plugin, as source text injected in both the build and the dev config: a value import
127
+ * of a server-side '@codenotch/*' package (process, orm — types at compile time, provided by
128
+ * the runtime inside a process, nothing to bundle for a browser) fails the build with the
129
+ * real explanation instead of Vite's cryptic resolve error. A type-only import is erased
130
+ * before resolution and never reaches it.
131
+ */
132
+ private static createServerOnlyGuardPlugin;
133
+ /**
134
+ * The client stubs of every process-declaring file of the workspace, for the app builds:
135
+ * one module source per file, keyed by the workspace-relative posix path of the file
136
+ * without its extension, lowercased. Each exported process with a static id becomes a
137
+ * handle `{ __codenotchProcess: true, id }` the app can read (`myProcess.id`) — the server
138
+ * logic itself never enters a browser bundle.
139
+ */
140
+ private static createProcessStubs;
141
+ /**
142
+ * A Vite plugin, as source text injected in both the build and the dev config: a workspace
143
+ * module that declares processes loads as its client stub (see createProcessStubs) instead
144
+ * of its real source, so an app can import a process to read its id without pulling any
145
+ * server code — the rest of such a file is not visible to the app (keep shared helpers out
146
+ * of process files).
147
+ * @param rootDir what the stub keys are relative to: the staging folder of a build (the
148
+ * workspace files are copied there), the workspace itself in dev
149
+ */
150
+ private static createProcessStubPlugin;
107
151
  private static createViteConfig;
108
152
  private static createIndexHtml;
109
153
  /**
@@ -13,8 +13,10 @@ const fs_2 = __importDefault(require("fs"));
13
13
  const fs_extra_1 = __importDefault(require("fs-extra"));
14
14
  const ShellUtils_1 = __importDefault(require("./ShellUtils"));
15
15
  const ConsoleUtils_1 = __importDefault(require("./ConsoleUtils"));
16
+ const ProjectUtils_1 = __importDefault(require("./ProjectUtils"));
17
+ const RuntimeUtils_1 = __importDefault(require("./RuntimeUtils"));
16
18
  class BuildUtils {
17
- static CN_REACT_VERSION = '2.0.3';
19
+ static CN_REACT_VERSION = '2.0.4';
18
20
  /** Root of the Codenotch project a folder belongs to, walking up to the closest manifest.json */
19
21
  static findWorkspace(fromDir = process.cwd()) {
20
22
  // findWorkspaceFromFile strips the last segment, hand it a dummy file
@@ -137,10 +139,12 @@ class BuildUtils {
137
139
  app: appManifest,
138
140
  clusterUrl: options.clusterUrl
139
141
  });
140
- // Clean previous builds
142
+ // Clean previous builds. The staging 'node_modules' survives (like the dev folder's):
143
+ // when a fallback 'npm install' is needed, reconciling a warm folder takes seconds
144
+ // where a fresh install takes minutes.
141
145
  if ((0, fs_1.existsSync)(outDir) || (0, fs_1.existsSync)(distDir)) {
142
146
  console.log("Cleaning previous builds...");
143
- FileUtils_1.default.deleteRecursively(outDir);
147
+ this.cleanStagingKeepingModules(outDir);
144
148
  FileUtils_1.default.deleteRecursively(distDir);
145
149
  ConsoleUtils_1.default.check(`Output directory cleaned (${outDir})\n`);
146
150
  }
@@ -171,7 +175,7 @@ class BuildUtils {
171
175
  this.copyPwaIcons(appManifest, appFileParentPath, workspacePath, outDir);
172
176
  }
173
177
  // vite.config.mjs (.mjs so it always loads as ESM, regardless of package.json "type")
174
- let viteConfig = this.createViteConfig(appName);
178
+ let viteConfig = this.createViteConfig(appName, outDir, await this.createProcessStubs(workspacePath));
175
179
  FileUtils_1.default.writeFileSync(outDir + '/vite.config.mjs', viteConfig);
176
180
  ConsoleUtils_1.default.check(`vite.config.mjs created successfully`);
177
181
  // tsconfig.json - layout is flat (mirrors the workspace), so typecheck the source trees
@@ -202,14 +206,13 @@ class BuildUtils {
202
206
  fs_extra_1.default.copySync(includedFile, targetPath);
203
207
  }
204
208
  ConsoleUtils_1.default.check(`${includedFiles.length} files copied successfully\n`);
205
- // execute npm i in the outDir
206
- await ShellUtils_1.default.exec(outDir, 'npm install', 'Installing dependencies', true);
207
209
  // Vite 8 needs Node 20+: warn up front, its own error would be cryptic
208
210
  const nodeMajor = parseInt(process.versions.node.split('.')[0], 10);
209
211
  if (nodeMajor < 20) {
210
212
  ConsoleUtils_1.default.checkWarning(`Node ${process.versions.node} detected, the build needs Node 20 or newer and may fail.`);
211
213
  }
212
- await ShellUtils_1.default.exec(outDir, 'npm run build', 'Building project', true);
214
+ // No 'npm install' when the workspace node_modules already covers the build
215
+ await this.runStagedBuild(outDir, workspacePath, false);
213
216
  ConsoleUtils_1.default.check(`Build executed successfully\n`);
214
217
  // The service worker precaches the dist, so it can only be generated once vite emitted it
215
218
  if (isPwa) {
@@ -294,7 +297,7 @@ class BuildUtils {
294
297
  let indexJsx = this.createIndexJsxDeployment(relativeOutFilePath, fileName);
295
298
  FileUtils_1.default.writeFileSync(outDir + '/index.jsx', indexJsx);
296
299
  // vite.config.mjs (.mjs so it always loads as ESM, regardless of package.json "type")
297
- let viteConfig = this.createViteConfig(appName);
300
+ let viteConfig = this.createViteConfig(appName, outDir, await this.createProcessStubs(workspacePath));
298
301
  FileUtils_1.default.writeFileSync(outDir + '/vite.config.mjs', viteConfig);
299
302
  // tsconfig.json — layout is flat (mirrors the workspace), so typecheck the source trees
300
303
  let tsconfig = this.createTsConfig(["**/*.ts", "**/*.tsx"]);
@@ -321,8 +324,8 @@ class BuildUtils {
321
324
  fs_extra_1.default.copySync(includedFile, targetPath);
322
325
  }
323
326
  try {
324
- await ShellUtils_1.default.exec(outDir, 'npm install', undefined, true);
325
- await ShellUtils_1.default.exec(outDir, 'npm run build', undefined, true);
327
+ // No 'npm install' when the workspace node_modules already covers the build
328
+ await this.runStagedBuild(outDir, workspacePath, true);
326
329
  // Copy the app manifest to the dist folder
327
330
  const newAppManifestPath = StringUtils_1.default.normalizePath(`${distDir}/app.manifest.json`);
328
331
  fs_extra_1.default.copyFileSync(appManifestPath, newAppManifestPath);
@@ -334,6 +337,69 @@ class BuildUtils {
334
337
  fs_extra_1.default.removeSync(outDir);
335
338
  }
336
339
  }
340
+ /**
341
+ * Path of the workspace's own Vite binary, when the workspace 'node_modules' provides
342
+ * everything a staged app build needs — vite, its react plugin, react itself, and a sass
343
+ * compiler when the project holds scss. The staged builds and the dev server then run
344
+ * without any 'npm install': the staging folders live under the workspace, so Node
345
+ * resolution reaches '<workspace>/node_modules' on its own. undefined = install needed.
346
+ */
347
+ static findWorkspaceVite(workspacePath) {
348
+ const modulesPath = StringUtils_1.default.normalizePath(`${workspacePath}/node_modules`);
349
+ for (const name of ['vite', '@vitejs/plugin-react', 'react', 'react-dom']) {
350
+ if ((0, fs_1.existsSync)(StringUtils_1.default.normalizePath(`${modulesPath}/${name}/package.json`)) === false) {
351
+ return undefined;
352
+ }
353
+ }
354
+ // scss compiles through sass-embedded (or sass): needed only when the project has scss
355
+ const hasScss = FileUtils_1.default.listFilesRecursively(workspacePath, {
356
+ ignoredFolderNames: ['node_modules', '.codenotch', '.git', 'compiled', 'dist', 'build', 'out'],
357
+ fileExtensions: ['.scss', '.sass']
358
+ }).length > 0;
359
+ if (hasScss
360
+ && (0, fs_1.existsSync)(StringUtils_1.default.normalizePath(`${modulesPath}/sass-embedded/package.json`)) === false
361
+ && (0, fs_1.existsSync)(StringUtils_1.default.normalizePath(`${modulesPath}/sass/package.json`)) === false) {
362
+ return undefined;
363
+ }
364
+ const viteBin = StringUtils_1.default.normalizePath(`${modulesPath}/vite/bin/vite.js`);
365
+ return (0, fs_1.existsSync)(viteBin) ? viteBin : undefined;
366
+ }
367
+ /**
368
+ * Runs the Vite build of a staged app. When the workspace 'node_modules' already provides
369
+ * everything (see findWorkspaceVite) there is NO 'npm install' at all: the staging keeps no
370
+ * 'node_modules' of its own, and Node resolution walks up from '.codenotch/<staging>' into
371
+ * the workspace — same resolved versions as the project, no network. Otherwise falls back
372
+ * to 'npm install' + 'npm run build' inside the staging.
373
+ */
374
+ static async runStagedBuild(outDir, workspacePath, quiet) {
375
+ const viteBin = this.findWorkspaceVite(workspacePath);
376
+ if (viteBin !== undefined) {
377
+ // A leftover install of a previous fallback build would shadow the workspace
378
+ // modules ('.vite' alone is just the build cache, harmless and worth keeping)
379
+ const staleModules = StringUtils_1.default.normalizePath(`${outDir}/node_modules`);
380
+ if ((0, fs_1.existsSync)(staleModules) && fs_2.default.readdirSync(staleModules).some(entry => entry !== '.vite')) {
381
+ FileUtils_1.default.deleteRecursively(staleModules);
382
+ }
383
+ if (!quiet) {
384
+ ConsoleUtils_1.default.check(`Dependencies resolved from the workspace node_modules, npm install skipped`);
385
+ }
386
+ await ShellUtils_1.default.exec(outDir, `node "${viteBin.replaceAll('\\', '/')}" build`, quiet ? undefined : 'Building project', true);
387
+ return;
388
+ }
389
+ await ShellUtils_1.default.exec(outDir, 'npm install', quiet ? undefined : 'Installing dependencies', true);
390
+ await ShellUtils_1.default.exec(outDir, 'npm run build', quiet ? undefined : 'Building project', true);
391
+ }
392
+ /** Empties a staging folder except its 'node_modules', kept as an install cache between builds */
393
+ static cleanStagingKeepingModules(stagingDir) {
394
+ if ((0, fs_1.existsSync)(stagingDir) === false) {
395
+ return;
396
+ }
397
+ for (const entry of fs_2.default.readdirSync(stagingDir)) {
398
+ if (entry.toLowerCase() !== 'node_modules') {
399
+ FileUtils_1.default.deleteRecursively(StringUtils_1.default.normalizePath(`${stagingDir}/${entry}`));
400
+ }
401
+ }
402
+ }
337
403
  static createIndexJsx(relativeOutFilePath, fileName) {
338
404
  return `
339
405
  import { createRoot } from 'react-dom/client';
@@ -468,7 +534,82 @@ try {
468
534
  }, null, 4);
469
535
  return tsconfig;
470
536
  }
471
- static createViteConfig(appName) {
537
+ /**
538
+ * A Vite plugin, as source text injected in both the build and the dev config: a value import
539
+ * of a server-side '@codenotch/*' package (process, orm — types at compile time, provided by
540
+ * the runtime inside a process, nothing to bundle for a browser) fails the build with the
541
+ * real explanation instead of Vite's cryptic resolve error. A type-only import is erased
542
+ * before resolution and never reaches it.
543
+ */
544
+ static createServerOnlyGuardPlugin() {
545
+ return `{
546
+ name: 'codenotch-server-only',
547
+ enforce: 'pre',
548
+ resolveId(source, importer) {
549
+ if (/^@codenotch\\/(process|orm)(\\/|$)/.test(source)) {
550
+ throw new Error("'" + source + "' is server-side and cannot be used in a React app" +
551
+ (importer ? " (imported by '" + importer + "')" : "") +
552
+ ". Import only its types ('import type { ... } from ...') and move the logic into a process the app calls.");
553
+ }
554
+ }
555
+ }`;
556
+ }
557
+ /**
558
+ * The client stubs of every process-declaring file of the workspace, for the app builds:
559
+ * one module source per file, keyed by the workspace-relative posix path of the file
560
+ * without its extension, lowercased. Each exported process with a static id becomes a
561
+ * handle `{ __codenotchProcess: true, id }` the app can read (`myProcess.id`) — the server
562
+ * logic itself never enters a browser bundle.
563
+ */
564
+ static async createProcessStubs(workspacePath) {
565
+ const discovered = await ProjectUtils_1.default.discoverProcessFiles(workspacePath);
566
+ const byFile = new Map();
567
+ for (const process of discovered) {
568
+ const key = StringUtils_1.default.toRelativePath(process.filePath, workspacePath)
569
+ .replaceAll('\\', '/').replace(/\.[^/.]+$/, '').toLowerCase();
570
+ const handles = byFile.get(key) ?? [];
571
+ if (process.variableName !== undefined && process.isExported && process.isIdStatic && process.id !== undefined) {
572
+ handles.push(`export const ${process.variableName} = { __codenotchProcess: true, id: ${JSON.stringify(process.id)} };`);
573
+ }
574
+ byFile.set(key, handles);
575
+ }
576
+ const stubs = {};
577
+ for (const [key, handles] of byFile) {
578
+ stubs[key] = [
579
+ '// Generated by the Codenotch CLI: this file declares server-side processes. The app only',
580
+ '// sees their client handles - the logic itself runs on the runtime, never in the browser.',
581
+ ...handles,
582
+ 'export {};',
583
+ ''
584
+ ].join('\n');
585
+ }
586
+ return stubs;
587
+ }
588
+ /**
589
+ * A Vite plugin, as source text injected in both the build and the dev config: a workspace
590
+ * module that declares processes loads as its client stub (see createProcessStubs) instead
591
+ * of its real source, so an app can import a process to read its id without pulling any
592
+ * server code — the rest of such a file is not visible to the app (keep shared helpers out
593
+ * of process files).
594
+ * @param rootDir what the stub keys are relative to: the staging folder of a build (the
595
+ * workspace files are copied there), the workspace itself in dev
596
+ */
597
+ static createProcessStubPlugin(rootDir, stubs) {
598
+ const root = StringUtils_1.default.normalizePath(rootDir).replaceAll('\\', '/').toLowerCase();
599
+ return `{
600
+ name: 'codenotch-process-stub',
601
+ enforce: 'pre',
602
+ load(id) {
603
+ const stubs = ${JSON.stringify(stubs)};
604
+ const root = ${JSON.stringify(root)};
605
+ const file = id.replace(/[?#].*$/, '').replaceAll('\\\\', '/').toLowerCase();
606
+ if (!file.startsWith(root + '/')) return null;
607
+ const key = file.slice(root.length + 1).replace(/\\.[^/.]+$/, '');
608
+ return Object.prototype.hasOwnProperty.call(stubs, key) ? stubs[key] : null;
609
+ }
610
+ }`;
611
+ }
612
+ static createViteConfig(appName, stagingDir, processStubs) {
472
613
  let debugOptions = `
473
614
  sourcemap: true,
474
615
  terserOptions: {
@@ -483,11 +624,13 @@ import path from 'path';
483
624
  export default defineConfig({
484
625
  plugins: [
485
626
  react(),
627
+ ${this.createProcessStubPlugin(stagingDir, processStubs)},
628
+ ${this.createServerOnlyGuardPlugin()},
486
629
  ],
487
630
  base: './',
488
631
  build: {
489
632
  outDir: '../${appName}-dist',
490
- emptyOutDir: true,
633
+ emptyOutDir: true,
491
634
  ${debugOptions}
492
635
  }
493
636
  })`.trim();
@@ -738,12 +881,22 @@ self.addEventListener('fetch', (event) => {
738
881
  console.log(chalk_1.default.red(`Error: App name not found in manifest at "${appManifestPath}"`));
739
882
  return 1;
740
883
  }
884
+ // Without --cluster the app talks to the local runtime, like a deployed one would:
885
+ // its URL comes from the runtime metadata (~/.codenotch/runtime.json, default port)
886
+ let clusterUrl = options.clusterUrl;
887
+ if (clusterUrl === undefined) {
888
+ clusterUrl = await RuntimeUtils_1.default.getRuntimeBaseUrl();
889
+ ConsoleUtils_1.default.check(`clusterUrl defaulted to the local runtime: ${clusterUrl} (override with --cluster)`);
890
+ if (await RuntimeUtils_1.default.isRuntimeRunning() === false) {
891
+ ConsoleUtils_1.default.checkWarning(`The local runtime does not seem to be running — start it with 'cn runtime start'.`);
892
+ }
893
+ }
741
894
  // Same environment as the one a built bundle reads, served by the dev server itself
742
895
  let workspace = { manifest: this.getFullManifestAt(workspacePath), path: workspacePath };
743
896
  let envVariables = await this.getCodenotchEnvVariables(workspace, {
744
897
  appName: appName,
745
898
  app: appManifest,
746
- clusterUrl: options.clusterUrl
899
+ clusterUrl: clusterUrl
747
900
  });
748
901
  // Only generated files live in the staging: the sources stay, and are watched, in the workspace
749
902
  let devDir = StringUtils_1.default.normalizePath(`${workspacePath}/.codenotch/${appName}-dev`);
@@ -761,7 +914,7 @@ self.addEventListener('fetch', (event) => {
761
914
  'react/jsx-runtime',
762
915
  'react/jsx-dev-runtime'
763
916
  ])];
764
- FileUtils_1.default.writeFileSync(devDir + '/vite.config.mjs', this.createViteDevConfig(workspacePath, devDir, appFilePath, envVariables, options, knownDependencies));
917
+ FileUtils_1.default.writeFileSync(devDir + '/vite.config.mjs', this.createViteDevConfig(workspacePath, devDir, appFilePath, envVariables, options, knownDependencies, await this.createProcessStubs(workspacePath)));
765
918
  ConsoleUtils_1.default.check(`Dev files created in ${devDir}\n`);
766
919
  // A cache from a previous run may hold those diverging hashes: start from a clean optimize pass
767
920
  FileUtils_1.default.deleteRecursively(StringUtils_1.default.normalizePath(`${devDir}/node_modules/.vite`));
@@ -770,19 +923,26 @@ self.addEventListener('fetch', (event) => {
770
923
  if (nodeMajor < 20) {
771
924
  ConsoleUtils_1.default.checkWarning(`Node ${process.versions.node} detected, the dev server needs Node 20 or newer and may fail.`);
772
925
  }
773
- if ((0, fs_1.existsSync)(StringUtils_1.default.normalizePath(`${devDir}/node_modules`)) === false) {
774
- console.log("Installing dependencies...");
775
- const installCode = await ShellUtils_1.default.run(devDir, 'npm install --no-audit --no-fund');
776
- if (installCode !== 0) {
777
- console.log(chalk_1.default.red(`Error: npm install failed (exit code ${installCode}).`));
778
- return installCode;
926
+ // The workspace 'node_modules' usually provides vite and every dependency (resolution
927
+ // walks up from the dev folder): no install at all then. Otherwise one install in the
928
+ // dev folder, kept between runs.
929
+ let viteBin = this.findWorkspaceVite(workspacePath);
930
+ if (viteBin === undefined) {
931
+ if ((0, fs_1.existsSync)(StringUtils_1.default.normalizePath(`${devDir}/node_modules`)) === false) {
932
+ console.log("Installing dependencies...");
933
+ const installCode = await ShellUtils_1.default.run(devDir, 'npm install --no-audit --no-fund');
934
+ if (installCode !== 0) {
935
+ console.log(chalk_1.default.red(`Error: npm install failed (exit code ${installCode}).`));
936
+ return installCode;
937
+ }
779
938
  }
939
+ viteBin = StringUtils_1.default.normalizePath(`${devDir}/node_modules/vite/bin/vite.js`);
780
940
  }
781
941
  console.log(chalk_1.default.green(`Starting dev server for "${appName}" (hot reload on ${workspacePath})...`));
782
942
  // Vite runs FROM the workspace: tailwind 4 scans its sources from the working directory,
783
943
  // and the staging holds none of them. The config still points everything at the staging.
784
944
  const devDirPosix = devDir.replaceAll('\\', '/');
785
- const viteCommand = `node "${devDirPosix}/node_modules/vite/bin/vite.js" --config "${devDirPosix}/vite.config.mjs"`;
945
+ const viteCommand = `node "${viteBin.replaceAll('\\', '/')}" --config "${devDirPosix}/vite.config.mjs"`;
786
946
  return await ShellUtils_1.default.run(workspacePath, viteCommand);
787
947
  }
788
948
  /** The dev entry: same contract as the built one, the app itself comes through the '@app' alias */
@@ -811,7 +971,7 @@ fetch('/api/env')
811
971
  * The dev flavoured Vite config: the app is aliased to its real file in the workspace so that
812
972
  * hot reload watches the project sources, and a tiny plugin serves the Codenotch environment.
813
973
  */
814
- static createViteDevConfig(workspacePath, devDir, appFilePath, envVariables, options, knownDependencies) {
974
+ static createViteDevConfig(workspacePath, devDir, appFilePath, envVariables, options, knownDependencies, processStubs = {}) {
815
975
  const workspacePosix = workspacePath.replaceAll('\\', '/');
816
976
  const devDirPosix = devDir.replaceAll('\\', '/');
817
977
  const appFilePosix = appFilePath.replaceAll('\\', '/');
@@ -836,6 +996,8 @@ export default defineConfig({
836
996
  });
837
997
  }
838
998
  },
999
+ ${this.createProcessStubPlugin(workspacePath, processStubs)},
1000
+ ${this.createServerOnlyGuardPlugin()},
839
1001
  ],
840
1002
  resolve: {
841
1003
  alias: [
@@ -1 +1 @@
1
- {"version":3,"file":"BuildUtils.js","sourceRoot":"","sources":["../../src/utils/BuildUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuildUtils.js","sourceRoot":"","sources":["../../src/utils/BuildUtils.ts"],"names":[],"mappings":"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"}
@@ -198,7 +198,7 @@ class ProjectTemplates {
198
198
  * and the processes cannot drift apart silently.
199
199
  */
200
200
  static createTodolistApi() {
201
- return this.lines(`import { getCodenotch } from '@codenotch/codenotch.react';`, `import type { ITodoList } from '../tables/todolist';`, `import type { ITodo } from '../tables/todo';`, ``, `// TODO: startProcess() is not implemented yet in @codenotch/codenotch.react 2.0.3 (it throws 'Not implemented.').`, `// The calls below are typed against the processes of ./processes and will work as is once it lands;`, `// until then the pages show the error it raises.`, `async function call<TInput, TOutput>(processId: string, input: TInput): Promise<TOutput> {`, `\tconst result = await getCodenotch().startProcess<string, TInput, TOutput>(processId, input);`, `\tif (result.isError) {`, `\t\tthrow new Error(result.errorMessage);`, `\t}`, `\treturn result.output;`, `}`, ``, `export const listTodoLists = () => call<{}, ITodoList[]>('ListTodoLists', {});`, `export const createTodoList = (name: string) => call<{ name: string }, { id: string }>('CreateTodoList', { name });`, `export const deleteTodoList = (listId: string) => call<{ listId: string }, { deleted: boolean }>('DeleteTodoList', { listId });`, ``, `export const listTodos = (listId: string) => call<{ listId: string }, ITodo[]>('ListTodos', { listId });`, `export const createTodo = (listId: string, title: string) => call<{ listId: string; title: string }, { id: string }>('CreateTodo', { listId, title });`, `export const toggleTodo = (todoId: string) => call<{ todoId: string }, { done: boolean }>('ToggleTodo', { todoId });`, `export const deleteTodo = (todoId: string) => call<{ todoId: string }, { deleted: boolean }>('DeleteTodo', { todoId });`, ``);
201
+ return this.lines(`import { getCodenotch } from '@codenotch/codenotch.react';`, `import type { ITodoList } from '../tables/todolist';`, `import type { ITodo } from '../tables/todo';`, ``, `// TODO: startProcess() is not implemented yet in @codenotch/codenotch.react 2.0.4 (it throws 'Not implemented.').`, `// The calls below are typed against the processes of ./processes and will work as is once it lands;`, `// until then the pages show the error it raises.`, `async function call<TInput, TOutput>(processId: string, input: TInput): Promise<TOutput> {`, `\tconst result = await getCodenotch().startProcess<string, TInput, TOutput>(processId, input);`, `\tif (result.isError) {`, `\t\tthrow new Error(result.errorMessage);`, `\t}`, `\treturn result.output;`, `}`, ``, `export const listTodoLists = () => call<{}, ITodoList[]>('ListTodoLists', {});`, `export const createTodoList = (name: string) => call<{ name: string }, { id: string }>('CreateTodoList', { name });`, `export const deleteTodoList = (listId: string) => call<{ listId: string }, { deleted: boolean }>('DeleteTodoList', { listId });`, ``, `export const listTodos = (listId: string) => call<{ listId: string }, ITodo[]>('ListTodos', { listId });`, `export const createTodo = (listId: string, title: string) => call<{ listId: string; title: string }, { id: string }>('CreateTodo', { listId, title });`, `export const toggleTodo = (todoId: string) => call<{ todoId: string }, { done: boolean }>('ToggleTodo', { todoId });`, `export const deleteTodo = (todoId: string) => call<{ todoId: string }, { deleted: boolean }>('DeleteTodo', { todoId });`, ``);
202
202
  }
203
203
  static createTodolistApp() {
204
204
  return this.lines(`import React from 'react';`, `import { HashRouter, Route, Routes } from 'react-router';`, `import './${DEFAULT_APP_NAME}.scss';`, `import Layout from './components/Layout';`, `import TodoListsPage from './pages/TodoListsPage';`, `import TodoListPage from './pages/TodoListPage';`, ``, `// HashRouter keeps the routing client side, whatever URL the runtime serves the app from`, `const ${DEFAULT_APP_NAME}: React.FC<{}> = () => {`, `\treturn <HashRouter>`, `\t\t<Routes>`, `\t\t\t<Route element={<Layout />}>`, `\t\t\t\t<Route index element={<TodoListsPage />} />`, `\t\t\t\t<Route path="lists/:listId" element={<TodoListPage />} />`, `\t\t\t</Route>`, `\t\t</Routes>`, `\t</HashRouter>;`, `};`, ``, `export default ${DEFAULT_APP_NAME};`, ``);
@@ -48,6 +48,8 @@ export default abstract class TemplateUtils {
48
48
  '@types/react'?: string | undefined;
49
49
  '@types/react-dom'?: string | undefined;
50
50
  '@vitejs/plugin-react'?: string | undefined;
51
+ vite?: string | undefined;
52
+ 'sass-embedded'?: string | undefined;
51
53
  '@codenotch/process': string;
52
54
  };
53
55
  };
@@ -95,7 +95,11 @@ class TemplateUtils {
95
95
  ...(withReact ? {
96
96
  '@types/react': '^19.2.18',
97
97
  '@types/react-dom': '^19.2.4',
98
- '@vitejs/plugin-react': '^6.0.5'
98
+ '@vitejs/plugin-react': '^6.0.5',
99
+ // In the workspace so app builds and the dev server run without any
100
+ // staging 'npm install' (see BuildUtils.findWorkspaceVite)
101
+ 'vite': '^8.0.0',
102
+ 'sass-embedded': '^1.97.3'
99
103
  } : {}),
100
104
  'typescript': '^5.9.3',
101
105
  ...extra.devDependencies
@@ -1 +1 @@
1
- {"version":3,"file":"TemplateUtils.js","sourceRoot":"","sources":["../../src/utils/TemplateUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TemplateUtils.js","sourceRoot":"","sources":["../../src/utils/TemplateUtils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codenotch/codenotch.cli",
3
- "version": "1.0.49",
3
+ "version": "1.0.51",
4
4
  "description": "The Codenotch CLI ('cn'): scaffold, run, validate, package and deploy full-stack TypeScript Codenotch projects - processes, tables, documents and React apps - on a local Codenotch runtime",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -50,6 +50,15 @@ The manifest carries the display and PWA settings:
50
50
  - **react-router 7** for multi-page apps, with `HashRouter`: it keeps the routing client side
51
51
  whatever URL the runtime serves the app from.
52
52
  - **`@codenotch/codenotch.react`** — the bridge to the runtime, through `useCodenotch()`.
53
+ - **`@codenotch/process` and `@codenotch/orm` are server-side**: a value import from app code
54
+ fails the build with an explicit error (there is nothing to bundle for a browser).
55
+ `import type { ... }` is fine — types are erased. Server logic belongs in a process the app
56
+ calls.
57
+ - **Importing a process from an app is allowed and safe**: in the app build the process file is
58
+ replaced by client handles — each exported process becomes `{ __codenotchProcess: true, id }`,
59
+ so `myProcess.id` works at runtime and `typeof myProcess` still types. Nothing else of that
60
+ file exists client-side: keep shared helpers in their own modules (`shared/`, `lib/`), never
61
+ in a process file.
53
62
 
54
63
  ## useCodenotch()
55
64
 
@@ -60,7 +69,7 @@ What the generated code relies on:
60
69
  | `cn.env` | the environment the runtime gave the app |
61
70
  | `cn.getTheme()` / `cn.setTheme('light' \| 'dark')` | theme; `setTheme` toggles the `dark` class on `<html>` |
62
71
  | `cn.getLanguage()` / `cn.setLanguage(lang)` / `cn.getLanguages()` | languages, from `manifest.json` |
63
- | `cn.startProcess(processId, input)` | call a server-side process — **not implemented yet** in `@codenotch/codenotch.react` 2.0.3 (it throws `Not implemented.`) |
72
+ | `cn.startProcess(processId, input)` | call a server-side process — **not implemented yet** in `@codenotch/codenotch.react` 2.0.4 (it throws `Not implemented.`) |
64
73
 
65
74
  For the full surface, read the typings in
66
75
  `node_modules/@codenotch/codenotch.react/dist/`. Because `startProcess` is not settled, generated
@@ -82,6 +82,10 @@ Consequences for the code you write:
82
82
  `template.email(...)` or `template.pdf(...)` per file.
83
83
  - **Module-level state is per file**: a top-level cache in a shared helper exists once per
84
84
  compiled module — shared by the processes of the same file, never across files.
85
+ - **Keep shared helpers out of process files**: in the app builds a process file is replaced by
86
+ its client handles (`{ __codenotchProcess: true, id }` per exported process) — a helper
87
+ declared there would not exist client-side. Put shared code in its own modules (`shared/`,
88
+ `lib/`).
85
89
  - The whole project is **typechecked before bundling**: type errors fail the packaging.
86
90
 
87
91
  `cn project compile` runs the same pipeline (typecheck, process and template bundling, app builds)