@forgeax/engine-devkit 0.1.7 → 0.1.20

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.
Files changed (40) hide show
  1. package/README.md +21 -2
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/__tests__/native-preview-dispatch.test.d.ts +2 -0
  4. package/dist/__tests__/native-preview-dispatch.test.d.ts.map +1 -0
  5. package/dist/__tests__/native-preview-subject-draw.unit.test.d.ts +2 -0
  6. package/dist/__tests__/native-preview-subject-draw.unit.test.d.ts.map +1 -0
  7. package/dist/__tests__/single-html-runtime.e2e.test.d.ts +2 -0
  8. package/dist/__tests__/single-html-runtime.e2e.test.d.ts.map +1 -0
  9. package/dist/__tests__/single-html.test.d.ts +2 -0
  10. package/dist/__tests__/single-html.test.d.ts.map +1 -0
  11. package/dist/bootstrap-commands.d.ts.map +1 -1
  12. package/dist/cli-output.d.ts.map +1 -1
  13. package/dist/cli.mjs +1777 -133
  14. package/dist/cli.mjs.map +1 -1
  15. package/dist/commands.d.ts.map +1 -1
  16. package/dist/dist.d.ts +2 -2
  17. package/dist/dist.d.ts.map +1 -1
  18. package/dist/host.d.ts +6 -1
  19. package/dist/host.d.ts.map +1 -1
  20. package/dist/index.d.ts +5 -3
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.mjs +2317 -1125
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/sdk-bootstrap.d.ts +6 -1
  25. package/dist/sdk-bootstrap.d.ts.map +1 -1
  26. package/dist/sdk-cli.mjs +33 -15
  27. package/dist/sdk-cli.mjs.map +1 -1
  28. package/dist/sdk.d.ts +1 -3
  29. package/dist/sdk.d.ts.map +1 -1
  30. package/dist/single-html.d.ts +43 -0
  31. package/dist/single-html.d.ts.map +1 -0
  32. package/dist/software-capture.d.ts +38 -0
  33. package/dist/software-capture.d.ts.map +1 -1
  34. package/dist/tools/client.d.ts.map +1 -1
  35. package/dist/tools/native-preview.d.ts.map +1 -1
  36. package/dist/tools/preview-contributions.d.ts +0 -5
  37. package/dist/tools/preview-contributions.d.ts.map +1 -1
  38. package/dist/types.d.ts +2 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +33 -31
package/README.md CHANGED
@@ -25,7 +25,7 @@ owns rendering, RHI events, replay backends, and preview execution.
25
25
  The normal project commands remain available through the `forgeax` CLI:
26
26
 
27
27
  ```text
28
- forgeax new [directory] [--template empty|game-3d]
28
+ forgeax new [directory] --template empty|game-3d
29
29
  forgeax init
30
30
  forgeax doctor
31
31
  forgeax skill install
@@ -35,7 +35,7 @@ forgeax dev
35
35
  forgeax build
36
36
  forgeax capture --backend auto --require-ui --output artifacts/capture/game-ui.png --json
37
37
  forgeax preview
38
- forgeax package [--output release/game-web.zip]
38
+ forgeax package [--format web-zip|single-html] [--output release/game-web.zip]
39
39
  forgeax list --json
40
40
  forgeax describe project.build --json
41
41
  forgeax run project.build --input request.json --json
@@ -77,12 +77,31 @@ The selected directory is a derived build root and is emptied before writing.
77
77
  root. An SDK-owned target fails before template copying with `project-target-inside-sdk`; use a
78
78
  sibling directory or an absolute path outside the SDK.
79
79
 
80
+ `forgeax new` requires an explicit template: choose `game-3d` for every 3D game, including custom
81
+ 3D genres, and choose `empty` otherwise. Omitting `--template` fails with `sdk-template-required`.
82
+
83
+ > [!IMPORTANT]
84
+ > `game-3d` is a runnable, contentful third-person reference, not an empty 3D scene. It copies
85
+ > authored scene content, visible objects and static collision examples, character/material/animation packs,
86
+ > and UI into the new project; those choices affect the initial picture, movement space, and asset
87
+ > closure. Read the generated project's `README.md` before pruning anything, then keep, adjust, or
88
+ > replace the starter content for the game's goal and update scene, runtime, and pack references
89
+ > together when removing it.
90
+
80
91
  `forgeax package` rebuilds with relative URLs, verifies the complete `forgeax-dist.json` closure,
81
92
  and emits a deterministic Web ZIP plus an adjacent SHA-256 file. The archive contains the bundled
82
93
  Engine JavaScript/WASM runtime and game assets at its root for HTTPS static or HTML-game hosting;
83
94
  it does not contain source, `node_modules`, or a local development server. Use `forgeax preview`
84
95
  for local HTTP acceptance. Opening the archived `index.html` through `file://` is unsupported.
85
96
 
97
+ `forgeax package --format single-html --output release/game-offline.html` emits a self-contained
98
+ single-HTML candidate and adjacent SHA-256. DevKit derives it from the same verified dist manifest,
99
+ embeds the generated module/worker/WASM/resource closure, and reports the candidate path, digest,
100
+ dist-manifest digest, and embedded asset count. The candidate is the acceptance object: open that
101
+ exact file through `file://` in the release browser profile and require zero remote requests, failed
102
+ requests, console/page errors, and resource misses before promotion. This format does not make
103
+ arbitrary dist `index.html` files or network-dependent services offline.
104
+
86
105
  `discoverRhiDebugOperations()` returns the same descriptors used by help and
87
106
  schema output. The operation manifest is the single discovery and recovery
88
107
  surface for RHI-debug.