@loomwork/create-loom-app 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -12,8 +12,16 @@ To start a new app. For adding a flow, tool or agent to an existing app use `loo
12
12
 
13
13
  ## Install
14
14
 
15
- Not published to npm yet, so `npm create loom-app` does not work. Build the framework once, then run
16
- the built binary. Where the app lives decides how `@loomwork/*` is wired:
15
+ ```bash
16
+ npm create @loomwork/loom-app@next my-app # @loomwork/* from npm at ^<this release>
17
+ cd my-app && pnpm install && pnpm test && pnpm start
18
+ ```
19
+
20
+ Use the scoped name: the unscoped `create-loom-app` on npm is an unrelated project. Pre-1.0 releases
21
+ are on the `next` dist-tag.
22
+
23
+ To work on Loom itself, build the framework and run the built binary; where the app lives decides
24
+ how `@loomwork/*` is wired:
17
25
 
18
26
  ```bash
19
27
  git clone https://github.com/chhetrisushil/loom.git && cd loom
package/dist/index.d.ts CHANGED
@@ -32,7 +32,19 @@ export declare function findWorkspace(target: string): WorkspaceContext;
32
32
  /** Every `@loomwork/*` package in a loom checkout: name → absolute directory. */
33
33
  export declare function loomPackages(loomRoot: string): Map<string, string>;
34
34
  /**
35
- * Rewrite the scaffolded `package.json` for an app outside the loom workspace: `@loomwork/*`
35
+ * The release this initializer ships with, read from its own package.json (the package compiles
36
+ * to CommonJS directly under `dist/`, so `..` is the package root from `dist/` and from `src/`).
37
+ * An app created outside the loom workspace depends on `^<this>` from npm.
38
+ */
39
+ export declare function releaseVersion(): string;
40
+ /**
41
+ * Rewrite the scaffolded `package.json` for an app that installs `@loomwork/*` from npm: every
42
+ * `workspace:*` loom dependency becomes `^<version>`. No overrides, so the app may also live
43
+ * inside another pnpm workspace.
44
+ */
45
+ export declare function registryPackageJson(json: string, version: string): string;
46
+ /**
47
+ * Rewrite the scaffolded `package.json` for an app linked to a loom checkout: `@loomwork/*`
36
48
  * dependencies become `*`, and `pnpm.overrides` redirects EVERY loom package to a `link:` into
37
49
  * the checkout. All of them, not just the app's direct ones: a `link:` dependency does not bring
38
50
  * its own `workspace:*` dependencies, so each transitive one must be mapped too — the same wiring
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,QAAQ,EAAuC,MAAM,oBAAoB,CAAC;AAEnF;;;;GAIG;AACH,eAAO,MAAM,aAAa,iBAAW,CAAC;AAiBtC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAejD;AASD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAkCjE;AAED,MAAM,WAAW,gBAAgB;IAC/B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,sFAAsF;IACtF,MAAM,EAAE,OAAO,CAAC;CACjB;AAUD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAoB9D;AAID,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAalE;AA2CD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBvF;AA4CD,wGAAwG;AACxG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAiBlE;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CA+CvE;AAED,yFAAyF;AACzF,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CA8GvD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,QAAQ,EAAuC,MAAM,oBAAoB,CAAC;AAEnF;;;;GAIG;AACH,eAAO,MAAM,aAAa,iBAAW,CAAC;AAkBtC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAejD;AASD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAkCjE;AAED,MAAM,WAAW,gBAAgB;IAC/B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,sFAAsF;IACtF,MAAM,EAAE,OAAO,CAAC;CACjB;AAUD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAoB9D;AAID,iFAAiF;AACjF,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAalE;AA2CD;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAKvC;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAYzE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgBvF;AA4CD,wGAAwG;AACxG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAiBlE;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CA+CvE;AAED,yFAAyF;AACzF,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAmHvD"}
package/dist/index.js CHANGED
@@ -39,6 +39,8 @@ exports.globToRegExp = globToRegExp;
39
39
  exports.workspaceGlobs = workspaceGlobs;
40
40
  exports.findWorkspace = findWorkspace;
41
41
  exports.loomPackages = loomPackages;
42
+ exports.releaseVersion = releaseVersion;
43
+ exports.registryPackageJson = registryPackageJson;
42
44
  exports.linkPackageJson = linkPackageJson;
43
45
  exports.assertNoLinkBelow = assertNoLinkBelow;
44
46
  exports.assertTargetNotLinked = assertTargetNotLinked;
@@ -55,9 +57,10 @@ exports.scaffoldFiles = scaffold_1.appFiles;
55
57
  const USAGE = `usage: create-loom-app <directory> [--loom-path <loom checkout>] [--name <package>] [--force]
56
58
 
57
59
  <directory> new app folder; refused when it already has files (unless --force)
58
- --loom-path your built loom checkout. @loomwork/* is not published, so an app created
59
- OUTSIDE the loom pnpm workspace links to it (link: + pnpm overrides).
60
- Not needed inside the workspace (apps/<name> gets workspace:*).
60
+ --loom-path link the app to your built loom checkout (link: + pnpm overrides) instead of
61
+ installing @loomwork/* from npm. Without it, an app outside the loom workspace
62
+ depends on the published packages (^<this release>); inside the workspace
63
+ (apps/<name>) it gets workspace:*.
61
64
  --name npm package name, may be scoped (default: the folder name, which must be a valid one)
62
65
  --force scaffold into a non-empty folder: overwrites only the files this generates,
63
66
  never deletes anything`;
@@ -222,7 +225,31 @@ function resolveLoomPath(raw, cwd) {
222
225
  return root;
223
226
  }
224
227
  /**
225
- * Rewrite the scaffolded `package.json` for an app outside the loom workspace: `@loomwork/*`
228
+ * The release this initializer ships with, read from its own package.json (the package compiles
229
+ * to CommonJS directly under `dist/`, so `..` is the package root from `dist/` and from `src/`).
230
+ * An app created outside the loom workspace depends on `^<this>` from npm.
231
+ */
232
+ function releaseVersion() {
233
+ const pkg = JSON.parse(fs.readFileSync(path.join(__dirname, "..", "package.json"), "utf8"));
234
+ return pkg.version;
235
+ }
236
+ /**
237
+ * Rewrite the scaffolded `package.json` for an app that installs `@loomwork/*` from npm: every
238
+ * `workspace:*` loom dependency becomes `^<version>`. No overrides, so the app may also live
239
+ * inside another pnpm workspace.
240
+ */
241
+ function registryPackageJson(json, version) {
242
+ const pkg = JSON.parse(json);
243
+ for (const table of [pkg.dependencies, pkg.devDependencies]) {
244
+ for (const name of Object.keys(table)) {
245
+ if (name.startsWith("@loomwork/"))
246
+ table[name] = `^${version}`;
247
+ }
248
+ }
249
+ return `${JSON.stringify(pkg, null, 2)}\n`;
250
+ }
251
+ /**
252
+ * Rewrite the scaffolded `package.json` for an app linked to a loom checkout: `@loomwork/*`
226
253
  * dependencies become `*`, and `pnpm.overrides` redirects EVERY loom package to a `link:` into
227
254
  * the checkout. All of them, not just the app's direct ones: a `link:` dependency does not bring
228
255
  * its own `workspace:*` dependencies, so each transitive one must be mapped too — the same wiring
@@ -404,22 +431,29 @@ function run(argv, cwd) {
404
431
  }
405
432
  existing = entries.length;
406
433
  }
407
- // Inside the loom workspace `workspace:*` resolves; anywhere else it cannot (unpublished).
434
+ // Inside the loom workspace `workspace:*` resolves. Elsewhere the app installs @loomwork/* from
435
+ // npm, or, with --loom-path, links to a local checkout.
408
436
  const ws = findWorkspace(root);
409
437
  let loomRoot;
410
- if (ws.root !== undefined && !ws.isLoom) {
411
- throw new Refusal(`"${target}" is a member of the pnpm workspace at ${ws.root}, which is not a loom checkout. pnpm reads \`overrides\` only from a workspace root, so a linked app cannot live there — scaffold outside that workspace.`);
412
- }
438
+ let registryVersion;
413
439
  if (!ws.isLoom) {
414
- if (args.loomPath === undefined) {
415
- throw new Refusal(`@loomwork/* packages are not published to npm yet, so an app outside the loom workspace must link to a built loom checkout.\n create-loom-app ${shellQuote(target)} --loom-path <path to your loom checkout>\n(build it first: \`pnpm install && pnpm build\` there). Or scaffold inside it, e.g. <loom>/apps/<name>, which needs no flag.`);
440
+ if (args.loomPath !== undefined) {
441
+ if (ws.root !== undefined) {
442
+ throw new Refusal(`"${target}" is a member of the pnpm workspace at ${ws.root}, which is not a loom checkout. pnpm reads \`overrides\` only from a workspace root, so a linked app cannot live there. Drop --loom-path to install @loomwork/* from npm, or scaffold outside that workspace.`);
443
+ }
444
+ loomRoot = resolveLoomPath(args.loomPath, cwd);
445
+ }
446
+ else {
447
+ registryVersion = releaseVersion();
416
448
  }
417
- loomRoot = resolveLoomPath(args.loomPath, cwd);
418
449
  }
419
450
  const files = (0, scaffold_1.appFiles)(pkgName);
420
451
  if (loomRoot !== undefined) {
421
452
  files["package.json"] = linkPackageJson(files["package.json"], root, loomRoot);
422
453
  }
454
+ else if (registryVersion !== undefined) {
455
+ files["package.json"] = registryPackageJson(files["package.json"], registryVersion);
456
+ }
423
457
  // `--force` into an existing directory: a planted `package.json -> ~/.x` (or a linked `src/`) must not be
424
458
  // written through. Check EVERY target first so a refusal leaves the directory untouched.
425
459
  for (const rel of Object.keys(files))
@@ -447,7 +481,9 @@ function run(argv, cwd) {
447
481
  }
448
482
  console.log(loomRoot !== undefined
449
483
  ? `Linked @loomwork/* to ${loomRoot} (link: + pnpm overrides in package.json).`
450
- : "Inside the loom workspace: @loomwork/* is workspace:* (run `pnpm install` from the repo root or this app).");
484
+ : registryVersion !== undefined
485
+ ? `@loomwork/* installs from npm at ^${registryVersion}.`
486
+ : "Inside the loom workspace: @loomwork/* is workspace:* (run `pnpm install` from the repo root or this app).");
451
487
  const cd = target === "." ? "" : `cd ${shellQuote(target)} && `;
452
488
  console.log(`Next: ${cd}pnpm install && pnpm test && pnpm start`);
453
489
  return 0;
@@ -460,7 +496,7 @@ function run(argv, cwd) {
460
496
  }
461
497
  }
462
498
  // Run only when invoked as a CLI (not when imported by tests).
463
- // `require.main === module`, not a filename check: `npm create loom-app` and any global
499
+ // `require.main === module`, not a filename check: `npm create @loomwork/loom-app` and any global
464
500
  // install invoke this through a symlink named `create-loom-app`, where argv[1] never ends
465
501
  // in "index.js" — the scaffolder would exit 0 having created nothing.
466
502
  if (require.main === module) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loomwork/create-loom-app",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Scaffold a minimal Loom app wired via defineConfig — config, tools, steps, a flow, middleware, and an eval",
5
5
  "bin": {
6
6
  "create-loom-app": "./dist/index.js"
@@ -8,7 +8,7 @@
8
8
  "main": "./dist/index.js",
9
9
  "types": "./dist/index.d.ts",
10
10
  "dependencies": {
11
- "@loomwork/scaffold": "^0.1.0"
11
+ "@loomwork/scaffold": "^0.1.1"
12
12
  },
13
13
  "devDependencies": {
14
14
  "@types/node": "^22.0.0",
package/src/index.ts CHANGED
@@ -13,9 +13,10 @@ export const scaffoldFiles = appFiles;
13
13
  const USAGE = `usage: create-loom-app <directory> [--loom-path <loom checkout>] [--name <package>] [--force]
14
14
 
15
15
  <directory> new app folder; refused when it already has files (unless --force)
16
- --loom-path your built loom checkout. @loomwork/* is not published, so an app created
17
- OUTSIDE the loom pnpm workspace links to it (link: + pnpm overrides).
18
- Not needed inside the workspace (apps/<name> gets workspace:*).
16
+ --loom-path link the app to your built loom checkout (link: + pnpm overrides) instead of
17
+ installing @loomwork/* from npm. Without it, an app outside the loom workspace
18
+ depends on the published packages (^<this release>); inside the workspace
19
+ (apps/<name>) it gets workspace:*.
19
20
  --name npm package name, may be scoped (default: the folder name, which must be a valid one)
20
21
  --force scaffold into a non-empty folder: overwrites only the files this generates,
21
22
  never deletes anything`;
@@ -196,7 +197,38 @@ function resolveLoomPath(raw: string, cwd: string): string {
196
197
  }
197
198
 
198
199
  /**
199
- * Rewrite the scaffolded `package.json` for an app outside the loom workspace: `@loomwork/*`
200
+ * The release this initializer ships with, read from its own package.json (the package compiles
201
+ * to CommonJS directly under `dist/`, so `..` is the package root from `dist/` and from `src/`).
202
+ * An app created outside the loom workspace depends on `^<this>` from npm.
203
+ */
204
+ export function releaseVersion(): string {
205
+ const pkg = JSON.parse(fs.readFileSync(path.join(__dirname, "..", "package.json"), "utf8")) as {
206
+ version: string;
207
+ };
208
+ return pkg.version;
209
+ }
210
+
211
+ /**
212
+ * Rewrite the scaffolded `package.json` for an app that installs `@loomwork/*` from npm: every
213
+ * `workspace:*` loom dependency becomes `^<version>`. No overrides, so the app may also live
214
+ * inside another pnpm workspace.
215
+ */
216
+ export function registryPackageJson(json: string, version: string): string {
217
+ const pkg = JSON.parse(json) as {
218
+ dependencies: Record<string, string>;
219
+ devDependencies: Record<string, string>;
220
+ [k: string]: unknown;
221
+ };
222
+ for (const table of [pkg.dependencies, pkg.devDependencies]) {
223
+ for (const name of Object.keys(table)) {
224
+ if (name.startsWith("@loomwork/")) table[name] = `^${version}`;
225
+ }
226
+ }
227
+ return `${JSON.stringify(pkg, null, 2)}\n`;
228
+ }
229
+
230
+ /**
231
+ * Rewrite the scaffolded `package.json` for an app linked to a loom checkout: `@loomwork/*`
200
232
  * dependencies become `*`, and `pnpm.overrides` redirects EVERY loom package to a `link:` into
201
233
  * the checkout. All of them, not just the app's direct ones: a `link:` dependency does not bring
202
234
  * its own `workspace:*` dependencies, so each transitive one must be mapped too — the same wiring
@@ -393,26 +425,29 @@ export function run(argv: string[], cwd: string): number {
393
425
  existing = entries.length;
394
426
  }
395
427
 
396
- // Inside the loom workspace `workspace:*` resolves; anywhere else it cannot (unpublished).
428
+ // Inside the loom workspace `workspace:*` resolves. Elsewhere the app installs @loomwork/* from
429
+ // npm, or, with --loom-path, links to a local checkout.
397
430
  const ws = findWorkspace(root);
398
431
  let loomRoot: string | undefined;
399
- if (ws.root !== undefined && !ws.isLoom) {
400
- throw new Refusal(
401
- `"${target}" is a member of the pnpm workspace at ${ws.root}, which is not a loom checkout. pnpm reads \`overrides\` only from a workspace root, so a linked app cannot live there — scaffold outside that workspace.`
402
- );
403
- }
432
+ let registryVersion: string | undefined;
404
433
  if (!ws.isLoom) {
405
- if (args.loomPath === undefined) {
406
- throw new Refusal(
407
- `@loomwork/* packages are not published to npm yet, so an app outside the loom workspace must link to a built loom checkout.\n create-loom-app ${shellQuote(target)} --loom-path <path to your loom checkout>\n(build it first: \`pnpm install && pnpm build\` there). Or scaffold inside it, e.g. <loom>/apps/<name>, which needs no flag.`
408
- );
434
+ if (args.loomPath !== undefined) {
435
+ if (ws.root !== undefined) {
436
+ throw new Refusal(
437
+ `"${target}" is a member of the pnpm workspace at ${ws.root}, which is not a loom checkout. pnpm reads \`overrides\` only from a workspace root, so a linked app cannot live there. Drop --loom-path to install @loomwork/* from npm, or scaffold outside that workspace.`
438
+ );
439
+ }
440
+ loomRoot = resolveLoomPath(args.loomPath, cwd);
441
+ } else {
442
+ registryVersion = releaseVersion();
409
443
  }
410
- loomRoot = resolveLoomPath(args.loomPath, cwd);
411
444
  }
412
445
 
413
446
  const files = appFiles(pkgName);
414
447
  if (loomRoot !== undefined) {
415
448
  files["package.json"] = linkPackageJson(files["package.json"] as string, root, loomRoot);
449
+ } else if (registryVersion !== undefined) {
450
+ files["package.json"] = registryPackageJson(files["package.json"] as string, registryVersion);
416
451
  }
417
452
 
418
453
  // `--force` into an existing directory: a planted `package.json -> ~/.x` (or a linked `src/`) must not be
@@ -442,7 +477,9 @@ export function run(argv: string[], cwd: string): number {
442
477
  console.log(
443
478
  loomRoot !== undefined
444
479
  ? `Linked @loomwork/* to ${loomRoot} (link: + pnpm overrides in package.json).`
445
- : "Inside the loom workspace: @loomwork/* is workspace:* (run `pnpm install` from the repo root or this app)."
480
+ : registryVersion !== undefined
481
+ ? `@loomwork/* installs from npm at ^${registryVersion}.`
482
+ : "Inside the loom workspace: @loomwork/* is workspace:* (run `pnpm install` from the repo root or this app)."
446
483
  );
447
484
  const cd = target === "." ? "" : `cd ${shellQuote(target)} && `;
448
485
  console.log(`Next: ${cd}pnpm install && pnpm test && pnpm start`);
@@ -455,7 +492,7 @@ export function run(argv: string[], cwd: string): number {
455
492
  }
456
493
 
457
494
  // Run only when invoked as a CLI (not when imported by tests).
458
- // `require.main === module`, not a filename check: `npm create loom-app` and any global
495
+ // `require.main === module`, not a filename check: `npm create @loomwork/loom-app` and any global
459
496
  // install invoke this through a symlink named `create-loom-app`, where argv[1] never ends
460
497
  // in "index.js" — the scaffolder would exit 0 having created nothing.
461
498
  if (require.main === module) {