@directivegames/genesys.sdk 3.2.2 → 3.2.5

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 (125) hide show
  1. package/README.md +60 -60
  2. package/dist/src/asset-pack/eslint.config.js +4 -4
  3. package/dist/src/core/cli.js +22 -22
  4. package/dist/src/core/common.js +2 -2
  5. package/dist/src/core/tools/build-project.js +1 -1
  6. package/dist/src/core/tools/new-asset-pack.js +1 -1
  7. package/dist/src/core/tools/new-project.js +1 -1
  8. package/dist/src/dependencies.js +1 -1
  9. package/dist/src/electron/backend/tools/const.js +1 -1
  10. package/dist/src/electron/backend/tools/open-project.js +1 -1
  11. package/dist/src/templates/eslint.config.js +4 -4
  12. package/dist/src/templates/scripts/genesys/calc-bounding-box.js +2 -2
  13. package/dist/src/templates/scripts/genesys/dev/dump-default-scene.js +1 -1
  14. package/dist/src/templates/scripts/genesys/dev/generate-manifest.js +1 -1
  15. package/dist/src/templates/scripts/genesys/dev/launcher.js +1 -1
  16. package/dist/src/templates/scripts/genesys/dev/storage-provider.js +4 -4
  17. package/dist/src/templates/scripts/genesys/genesys-mcp.js +26 -26
  18. package/dist/src/templates/scripts/genesys/mcp/doc-tools.js +2 -2
  19. package/dist/src/templates/scripts/genesys/mcp/editor-functions.js +5 -5
  20. package/dist/src/templates/scripts/genesys/mcp/search-actors.js +1 -1
  21. package/dist/src/templates/scripts/genesys/mcp/search-assets.js +1 -1
  22. package/dist/src/templates/scripts/genesys/mcp/utils.js +1 -1
  23. package/dist/src/templates/scripts/genesys/misc.js +1 -1
  24. package/dist/src/templates/scripts/genesys/mock.js +1 -1
  25. package/dist/src/templates/scripts/genesys/place-actors.js +1 -1
  26. package/dist/src/templates/scripts/genesys/post-install.js +1 -1
  27. package/dist/src/templates/scripts/genesys/storageProvider.js +2 -2
  28. package/dist/src/templates/src/index.js +1 -1
  29. package/dist/src/templates/src/templates/firstPerson/src/game.js +1 -1
  30. package/dist/src/templates/src/templates/firstPerson/src/player.js +1 -1
  31. package/dist/src/templates/src/templates/fps/src/game.js +1 -1
  32. package/dist/src/templates/src/templates/fps/src/player.js +1 -1
  33. package/dist/src/templates/src/templates/fps/src/weapon.js +1 -1
  34. package/dist/src/templates/src/templates/freeCamera/src/game.js +1 -1
  35. package/dist/src/templates/src/templates/freeCamera/src/player.js +1 -1
  36. package/dist/src/templates/src/templates/sideScroller/src/game.js +1 -1
  37. package/dist/src/templates/src/templates/sideScroller/src/level-generator.js +1 -1
  38. package/dist/src/templates/src/templates/sideScroller/src/player.js +1 -1
  39. package/dist/src/templates/src/templates/thirdPerson/src/game.js +1 -1
  40. package/dist/src/templates/src/templates/thirdPerson/src/player.js +1 -1
  41. package/dist/src/templates/src/templates/vehicle/src/base-vehicle.js +1 -1
  42. package/dist/src/templates/src/templates/vehicle/src/game.js +1 -1
  43. package/dist/src/templates/src/templates/vehicle/src/mesh-vehicle.js +1 -1
  44. package/dist/src/templates/src/templates/vehicle/src/player.js +1 -1
  45. package/dist/src/templates/src/templates/vehicle/src/primitive-vehicle.js +1 -1
  46. package/dist/src/templates/src/templates/vehicle/src/ui-hints.js +31 -31
  47. package/dist/src/templates/src/templates/vr-game/src/game.js +1 -1
  48. package/dist/src/templates/src/templates/vr-game/src/sample-vr-actor.js +1 -1
  49. package/package.json +176 -176
  50. package/scripts/post-install.ts +143 -143
  51. package/src/asset-pack/.gitattributes +88 -88
  52. package/src/asset-pack/eslint.config.js +45 -45
  53. package/src/asset-pack/gitignore +11 -11
  54. package/src/asset-pack/scripts/postinstall.ts +81 -81
  55. package/src/asset-pack/tsconfig.json +33 -33
  56. package/src/templates/.cursor/mcp.json +20 -20
  57. package/src/templates/.cursorignore +2 -2
  58. package/src/templates/.gitattributes +88 -88
  59. package/src/templates/.vscode/settings.json +6 -6
  60. package/src/templates/AGENTS.md +86 -86
  61. package/src/templates/README.md +24 -24
  62. package/src/templates/eslint.config.js +45 -45
  63. package/src/templates/gitignore +11 -11
  64. package/src/templates/index.html +34 -34
  65. package/src/templates/pnpm-lock.yaml +3676 -3676
  66. package/src/templates/scripts/genesys/build-project.ts +51 -51
  67. package/src/templates/scripts/genesys/calc-bounding-box.ts +272 -272
  68. package/src/templates/scripts/genesys/common.ts +46 -46
  69. package/src/templates/scripts/genesys/const.ts +9 -9
  70. package/src/templates/scripts/genesys/dev/dump-default-scene.ts +11 -11
  71. package/src/templates/scripts/genesys/dev/generate-manifest.ts +146 -146
  72. package/src/templates/scripts/genesys/dev/launcher.ts +46 -46
  73. package/src/templates/scripts/genesys/dev/storage-provider.ts +229 -229
  74. package/src/templates/scripts/genesys/dev/update-template-scenes.ts +84 -84
  75. package/src/templates/scripts/genesys/doc-server.ts +16 -16
  76. package/src/templates/scripts/genesys/genesys-mcp.ts +526 -526
  77. package/src/templates/scripts/genesys/mcp/doc-tools.ts +86 -86
  78. package/src/templates/scripts/genesys/mcp/editor-functions.ts +151 -151
  79. package/src/templates/scripts/genesys/mcp/editor-tools.ts +73 -73
  80. package/src/templates/scripts/genesys/mcp/get-scene-state.ts +35 -35
  81. package/src/templates/scripts/genesys/mcp/run-subprocess.ts +30 -30
  82. package/src/templates/scripts/genesys/mcp/search-actors.ts +858 -858
  83. package/src/templates/scripts/genesys/mcp/search-assets.ts +380 -380
  84. package/src/templates/scripts/genesys/mcp/utils.ts +281 -281
  85. package/src/templates/scripts/genesys/misc.ts +42 -42
  86. package/src/templates/scripts/genesys/mock.ts +6 -6
  87. package/src/templates/scripts/genesys/place-actors.ts +179 -179
  88. package/src/templates/scripts/genesys/post-install.ts +30 -30
  89. package/src/templates/scripts/genesys/prefab.schema.json +84 -84
  90. package/src/templates/scripts/genesys/remove-engine-comments.ts +134 -134
  91. package/src/templates/scripts/genesys/run-mcp-inspector.bat +4 -4
  92. package/src/templates/scripts/genesys/storageProvider.ts +182 -182
  93. package/src/templates/scripts/genesys/validate-prefabs.ts +138 -138
  94. package/src/templates/src/index.ts +22 -22
  95. package/src/templates/src/templates/firstPerson/assets/default.genesys-scene +165 -165
  96. package/src/templates/src/templates/firstPerson/src/game.ts +39 -39
  97. package/src/templates/src/templates/firstPerson/src/player.ts +63 -63
  98. package/src/templates/src/templates/fps/assets/default.genesys-scene +9459 -9459
  99. package/src/templates/src/templates/fps/src/game.ts +39 -39
  100. package/src/templates/src/templates/fps/src/player.ts +69 -69
  101. package/src/templates/src/templates/fps/src/weapon.ts +54 -54
  102. package/src/templates/src/templates/freeCamera/assets/default.genesys-scene +165 -165
  103. package/src/templates/src/templates/freeCamera/src/game.ts +39 -39
  104. package/src/templates/src/templates/freeCamera/src/player.ts +45 -45
  105. package/src/templates/src/templates/sideScroller/assets/default.genesys-scene +121 -121
  106. package/src/templates/src/templates/sideScroller/src/const.ts +45 -45
  107. package/src/templates/src/templates/sideScroller/src/game.ts +122 -122
  108. package/src/templates/src/templates/sideScroller/src/level-generator.ts +361 -361
  109. package/src/templates/src/templates/sideScroller/src/player.ts +125 -125
  110. package/src/templates/src/templates/thirdPerson/assets/default.genesys-scene +165 -165
  111. package/src/templates/src/templates/thirdPerson/src/game.ts +39 -39
  112. package/src/templates/src/templates/thirdPerson/src/player.ts +61 -61
  113. package/src/templates/src/templates/vehicle/assets/default.genesys-scene +225 -225
  114. package/src/templates/src/templates/vehicle/src/base-vehicle.ts +145 -145
  115. package/src/templates/src/templates/vehicle/src/game.ts +43 -43
  116. package/src/templates/src/templates/vehicle/src/mesh-vehicle.ts +191 -191
  117. package/src/templates/src/templates/vehicle/src/player.ts +109 -109
  118. package/src/templates/src/templates/vehicle/src/primitive-vehicle.ts +266 -266
  119. package/src/templates/src/templates/vehicle/src/ui-hints.ts +101 -101
  120. package/src/templates/src/templates/vr-game/assets/default.genesys-scene +246 -246
  121. package/src/templates/src/templates/vr-game/src/auto-imports.ts +1 -1
  122. package/src/templates/src/templates/vr-game/src/game.ts +66 -66
  123. package/src/templates/src/templates/vr-game/src/sample-vr-actor.ts +26 -26
  124. package/src/templates/tsconfig.json +34 -34
  125. package/src/templates/vite.config.ts +52 -52
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  import * as THREE from 'three';
9
9
  /**
10
10
  * A free camera player class.
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import './auto-imports.js';
4
4
  import { SideScrollerLevelGenerator } from './level-generator.js';
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import { COLORS, LEVEL_CONFIG } from './const.js';
4
4
  // Simple level generator for infinite side-scrolling levels
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  import * as THREE from 'three';
9
9
  import { CAMERA_SETTINGS, PLAYER_MOVEMENT } from './const.js';
10
10
  // ============================================================================
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import { ThirdPersonPlayer } from './player.js';
4
4
  import './auto-imports.js';
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  import * as THREE from 'three';
9
9
  /**
10
10
  * A third person player class.
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import { VehiclePlayer } from './player.js';
4
4
  /**
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import './auto-imports.js';
4
4
  import { VehiclePlayer } from './player.js';
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  var MeshVehicle_1;
8
- import * as ENGINE from 'genesys.js';
8
+ import * as ENGINE from '@directivegames/genesys.js';
9
9
  import * as THREE from 'three';
10
10
  import { BaseVehicle } from './base-vehicle.js';
11
11
  /**
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  import * as THREE from 'three';
9
9
  import { BaseVehicle } from './base-vehicle.js';
10
10
  /**
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  var PrimitiveVehicle_1;
8
- import * as ENGINE from 'genesys.js';
8
+ import * as ENGINE from '@directivegames/genesys.js';
9
9
  import * as THREE from 'three';
10
10
  import { BaseVehicle } from './base-vehicle.js';
11
11
  /**
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  /**
9
9
  * Dismissable UI component that displays control hints when the game starts
10
10
  */
@@ -44,36 +44,36 @@ let UIHints = class UIHints extends ENGINE.Actor {
44
44
  }
45
45
  });
46
46
  // Set the HTML content
47
- this.uiElement.setHTML(`
48
- <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;">
49
- <div style="font-weight: bold; color: #4CAF50; font-size: 18px;">
50
- 🎮 Vehicle Game Controls
51
- </div>
52
- <button id="closeHints" style="
53
- background: #f44336;
54
- color: white;
55
- border: none;
56
- border-radius: 50%;
57
- width: 30px;
58
- height: 30px;
59
- cursor: pointer;
60
- font-size: 16px;
61
- font-weight: bold;
62
- ">×</button>
63
- </div>
64
- <div style="margin-bottom: 12px;">
65
- <span style="color: #FFA726; font-weight: bold;">Movement:</span>
66
- <br>• WASD or Arrow Keys - Move/Drive
67
- <br>• Mouse - Camera control
68
- </div>
69
- <div style="margin-bottom: 12px;">
70
- <span style="color: #FFA726; font-weight: bold;">Vehicle Interaction:</span>
71
- <br>• E - Enter/Exit vehicle (when nearby)
72
- <br>• F - Flip vehicle (when inside)
73
- </div>
74
- <div style="font-size: 14px; color: #CCCCCC; margin-top: 15px; text-align: center; font-style: italic;">
75
- 💡 Walk near a vehicle and press E to enter
76
- </div>
47
+ this.uiElement.setHTML(`
48
+ <div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 15px;">
49
+ <div style="font-weight: bold; color: #4CAF50; font-size: 18px;">
50
+ 🎮 Vehicle Game Controls
51
+ </div>
52
+ <button id="closeHints" style="
53
+ background: #f44336;
54
+ color: white;
55
+ border: none;
56
+ border-radius: 50%;
57
+ width: 30px;
58
+ height: 30px;
59
+ cursor: pointer;
60
+ font-size: 16px;
61
+ font-weight: bold;
62
+ ">×</button>
63
+ </div>
64
+ <div style="margin-bottom: 12px;">
65
+ <span style="color: #FFA726; font-weight: bold;">Movement:</span>
66
+ <br>• WASD or Arrow Keys - Move/Drive
67
+ <br>• Mouse - Camera control
68
+ </div>
69
+ <div style="margin-bottom: 12px;">
70
+ <span style="color: #FFA726; font-weight: bold;">Vehicle Interaction:</span>
71
+ <br>• E - Enter/Exit vehicle (when nearby)
72
+ <br>• F - Flip vehicle (when inside)
73
+ </div>
74
+ <div style="font-size: 14px; color: #CCCCCC; margin-top: 15px; text-align: center; font-style: italic;">
75
+ 💡 Walk near a vehicle and press E to enter
76
+ </div>
77
77
  `);
78
78
  // Add close button functionality
79
79
  const closeButton = this.uiElement.querySelector('#closeHints');
@@ -1,4 +1,4 @@
1
- import * as ENGINE from 'genesys.js';
1
+ import * as ENGINE from '@directivegames/genesys.js';
2
2
  import * as THREE from 'three';
3
3
  import './auto-imports.js';
4
4
  class MyGame extends ENGINE.BaseGameLoop {
@@ -4,7 +4,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import * as ENGINE from 'genesys.js';
7
+ import * as ENGINE from '@directivegames/genesys.js';
8
8
  /**
9
9
  * Sample VR Actor - A simple actor that can be picked up and manipulated in VR
10
10
  */
package/package.json CHANGED
@@ -1,176 +1,176 @@
1
- {
2
- "name": "@directivegames/genesys.sdk",
3
- "version": "3.2.2",
4
- "description": "Genesys SDK - A development toolkit for game development",
5
- "author": "Directive Games",
6
- "main": "index.js",
7
- "type": "module",
8
- "pnpm": {
9
- "onlyBuiltDependencies": [
10
- "electron"
11
- ]
12
- },
13
- "files": [
14
- "dist/src",
15
- "src/templates",
16
- "src/asset-pack",
17
- "scripts"
18
- ],
19
- "bin": {
20
- "genesys-sdk": "./dist/src/core/cli.js"
21
- },
22
- "scripts": {
23
- "postinstall": "pnpm exec tsx scripts/post-install.ts",
24
- "dev:main": "tsc --watch -p tsconfig.json",
25
- "dev:preload": "tsc --watch -p tsconfig.preload.json",
26
- "dev:electron": "electron dist/src/electron/backend/main.js",
27
- "dev:watch": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" nodemon",
28
- "dev": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" \"pnpm dev:electron\"",
29
- "dev:hosted": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" \"dotenv -v DEV_HOSTED=true pnpm dev:electron\"",
30
- "dev:vite-old": "vite",
31
- "dev-old": "pnpm compile && concurrently -k -n MAIN,PRELOAD,VITE \"pnpm dev:main\" \"pnpm dev:preload\" \"pnpm dev:vite-old\" \"pnpm dev:electron-old\"",
32
- "compile": "tsc -p tsconfig.json && tsc -p tsconfig.preload.json",
33
- "build": "vite build && pnpm compile",
34
- "dist": "pnpm build && electron-builder",
35
- "lint": "eslint . --fix --ext .ts,.tsx",
36
- "pack": "pnpm build && pnpm pack",
37
- "cli": "pnpm exec tsx src/core/cli.ts",
38
- "cli:new": "pnpm exec tsx src/core/cli.ts new",
39
- "cli:build": "pnpm exec tsx src/core/cli.ts build",
40
- "cli:new-asset-pack": "pnpm exec tsx src/core/cli.ts new-asset-pack"
41
- },
42
- "build": {
43
- "artifactName": "Genesys-Setup-${version}.${ext}",
44
- "publish": [
45
- {
46
- "provider": "github",
47
- "releaseType": "release",
48
- "owner": "directivegames",
49
- "repo": "genesys.sdk-release",
50
- "private": true
51
- }
52
- ],
53
- "asar": true,
54
- "asarUnpack": [
55
- "node_modules/@esbuild/**/*",
56
- "node_modules/esbuild/**/*"
57
- ],
58
- "appId": "com.directivegames.genesys.sdk",
59
- "productName": "Genesys",
60
- "files": [
61
- "dist/**/*",
62
- {
63
- "from": "node_modules/.pnpm/three@0.177.0/node_modules/three/examples",
64
- "to": "node_modules/three/examples"
65
- }
66
- ],
67
- "extraResources": [
68
- {
69
- "from": "src/templates",
70
- "to": "vendor/src/templates"
71
- },
72
- {
73
- "from": "src/asset-pack",
74
- "to": "vendor/src/asset-pack"
75
- }
76
- ],
77
- "directories": {
78
- "buildResources": "build"
79
- },
80
- "extraMetadata": {
81
- "main": "dist/src/electron/backend/main.js"
82
- },
83
- "protocols": [
84
- {
85
- "name": "genesys",
86
- "schemes": [
87
- "genesys"
88
- ]
89
- },
90
- {
91
- "name": "genesys-dev",
92
- "schemes": [
93
- "genesys-dev"
94
- ]
95
- }
96
- ],
97
- "win": {
98
- "target": "nsis"
99
- },
100
- "mac": {
101
- "target": "dmg",
102
- "hardenedRuntime": true,
103
- "gatekeeperAssess": false,
104
- "entitlements": "build/entitlements.mac.plist",
105
- "entitlementsInherit": "build/entitlements.mac.plist"
106
- }
107
- },
108
- "dependencies": {
109
- "@electron/rebuild": "^4.0.1",
110
- "@emotion/react": "^11.14.0",
111
- "@emotion/styled": "^11.14.0",
112
- "@mui/icons-material": "^7.1.0",
113
- "@mui/lab": "^7.0.0-beta.12",
114
- "@mui/material": "^7.1.0",
115
- "chokidar": "^4.0.3",
116
- "commander": "^14.0.2",
117
- "core-util-is": "^1.0.3",
118
- "cors": "^2.8.5",
119
- "electron-devtools-installer": "^4.0.0",
120
- "electron-is-dev": "^3.0.1",
121
- "electron-log": "^5.4.3",
122
- "electron-store": "^11.0.2",
123
- "electron-updater": "^6.6.2",
124
- "esbuild": "^0.25.11",
125
- "express": "^5.1.0",
126
- "fix-path": "^4.0.0",
127
- "genesys.js": "^3.1.24",
128
- "jsdom": "^27.0.0",
129
- "minimatch": "^10.0.1",
130
- "multer": "^2.0.2",
131
- "node-abi": "^4.14.0",
132
- "react": "^19.2.0",
133
- "react-dom": "^19.2.0",
134
- "three": "^0.177.0",
135
- "upath": "^2.0.1",
136
- "ws": "^8.18.2",
137
- "zod": "^3.24.4"
138
- },
139
- "devDependencies": {
140
- "@electron/notarize": "^3.1.0",
141
- "@modelcontextprotocol/sdk": "^1.22.0",
142
- "@types/cors": "^2.8.18",
143
- "@types/electron-store": "^1.3.1",
144
- "@types/express": "^5.0.2",
145
- "@types/jsdom": "^27.0.0",
146
- "@types/minimatch": "^5.1.2",
147
- "@types/multer": "^1.4.12",
148
- "@types/react": "^19.2.0",
149
- "@types/react-dom": "^19.2.0",
150
- "@types/three": "^0.177.0",
151
- "@types/ws": "^8.18.1",
152
- "@typescript-eslint/eslint-plugin": "^8.29.1",
153
- "@typescript-eslint/parser": "^8.29.1",
154
- "@vitejs/plugin-react": "^4.4.1",
155
- "ajv": "^8.17.1",
156
- "concurrently": "^9.1.2",
157
- "dotenv-cli": "^8.0.0",
158
- "electron": "^39.2.3",
159
- "electron-builder": "^26.0.12",
160
- "eslint": "^9.24.0",
161
- "eslint-plugin-import": "^2.31.0",
162
- "get-port": "^7.1.0",
163
- "nanoid": "^5.1.6",
164
- "nodemon": "^3.1.10",
165
- "ts-morph": "^27.0.2",
166
- "tsc-watch": "^7.1.0",
167
- "tsx": "^4.20.6",
168
- "typescript": "^5.8.3",
169
- "vite": "^6.3.5",
170
- "vite-plugin-mkcert": "^1.17.9",
171
- "vite-plugin-node-polyfills": "^0.24.0",
172
- "wait-on": "^8.0.4",
173
- "yaml": "^2.6.1",
174
- "zod-to-json-schema": "^3.25.0"
175
- }
176
- }
1
+ {
2
+ "name": "@directivegames/genesys.sdk",
3
+ "version": "3.2.5",
4
+ "description": "Genesys SDK - A development toolkit for game development",
5
+ "author": "Directive Games",
6
+ "main": "index.js",
7
+ "type": "module",
8
+ "pnpm": {
9
+ "onlyBuiltDependencies": [
10
+ "electron"
11
+ ]
12
+ },
13
+ "files": [
14
+ "dist/src",
15
+ "src/templates",
16
+ "src/asset-pack",
17
+ "scripts"
18
+ ],
19
+ "bin": {
20
+ "genesys-sdk": "./dist/src/core/cli.js"
21
+ },
22
+ "scripts": {
23
+ "postinstall": "pnpm exec tsx scripts/post-install.ts",
24
+ "dev:main": "tsc --watch -p tsconfig.json",
25
+ "dev:preload": "tsc --watch -p tsconfig.preload.json",
26
+ "dev:electron": "electron dist/src/electron/backend/main.js",
27
+ "dev:watch": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" nodemon",
28
+ "dev": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" \"pnpm dev:electron\"",
29
+ "dev:hosted": "pnpm compile && concurrently -k -n MAIN,PRELOAD \"pnpm dev:main\" \"pnpm dev:preload\" \"dotenv -v DEV_HOSTED=true pnpm dev:electron\"",
30
+ "dev:vite-old": "vite",
31
+ "dev-old": "pnpm compile && concurrently -k -n MAIN,PRELOAD,VITE \"pnpm dev:main\" \"pnpm dev:preload\" \"pnpm dev:vite-old\" \"pnpm dev:electron-old\"",
32
+ "compile": "tsc -p tsconfig.json && tsc -p tsconfig.preload.json",
33
+ "build": "vite build && pnpm compile",
34
+ "dist": "pnpm build && electron-builder",
35
+ "lint": "eslint . --fix --ext .ts,.tsx",
36
+ "pack": "pnpm build && pnpm pack",
37
+ "cli": "pnpm exec tsx src/core/cli.ts",
38
+ "cli:new": "pnpm exec tsx src/core/cli.ts new",
39
+ "cli:build": "pnpm exec tsx src/core/cli.ts build",
40
+ "cli:new-asset-pack": "pnpm exec tsx src/core/cli.ts new-asset-pack"
41
+ },
42
+ "build": {
43
+ "artifactName": "Genesys-Setup-${version}.${ext}",
44
+ "publish": [
45
+ {
46
+ "provider": "github",
47
+ "releaseType": "release",
48
+ "owner": "directivegames",
49
+ "repo": "genesys.sdk-release",
50
+ "private": true
51
+ }
52
+ ],
53
+ "asar": true,
54
+ "asarUnpack": [
55
+ "node_modules/@esbuild/**/*",
56
+ "node_modules/esbuild/**/*"
57
+ ],
58
+ "appId": "com.directivegames.genesys.sdk",
59
+ "productName": "Genesys",
60
+ "files": [
61
+ "dist/**/*",
62
+ {
63
+ "from": "node_modules/.pnpm/three@0.177.0/node_modules/three/examples",
64
+ "to": "node_modules/three/examples"
65
+ }
66
+ ],
67
+ "extraResources": [
68
+ {
69
+ "from": "src/templates",
70
+ "to": "vendor/src/templates"
71
+ },
72
+ {
73
+ "from": "src/asset-pack",
74
+ "to": "vendor/src/asset-pack"
75
+ }
76
+ ],
77
+ "directories": {
78
+ "buildResources": "build"
79
+ },
80
+ "extraMetadata": {
81
+ "main": "dist/src/electron/backend/main.js"
82
+ },
83
+ "protocols": [
84
+ {
85
+ "name": "genesys",
86
+ "schemes": [
87
+ "genesys"
88
+ ]
89
+ },
90
+ {
91
+ "name": "genesys-dev",
92
+ "schemes": [
93
+ "genesys-dev"
94
+ ]
95
+ }
96
+ ],
97
+ "win": {
98
+ "target": "nsis"
99
+ },
100
+ "mac": {
101
+ "target": "dmg",
102
+ "hardenedRuntime": true,
103
+ "gatekeeperAssess": false,
104
+ "entitlements": "build/entitlements.mac.plist",
105
+ "entitlementsInherit": "build/entitlements.mac.plist"
106
+ }
107
+ },
108
+ "dependencies": {
109
+ "@electron/rebuild": "^4.0.1",
110
+ "@emotion/react": "^11.14.0",
111
+ "@emotion/styled": "^11.14.0",
112
+ "@mui/icons-material": "^7.1.0",
113
+ "@mui/lab": "^7.0.0-beta.12",
114
+ "@mui/material": "^7.1.0",
115
+ "chokidar": "^4.0.3",
116
+ "commander": "^14.0.2",
117
+ "core-util-is": "^1.0.3",
118
+ "cors": "^2.8.5",
119
+ "electron-devtools-installer": "^4.0.0",
120
+ "electron-is-dev": "^3.0.1",
121
+ "electron-log": "^5.4.3",
122
+ "electron-store": "^11.0.2",
123
+ "electron-updater": "^6.6.2",
124
+ "esbuild": "^0.25.11",
125
+ "express": "^5.1.0",
126
+ "fix-path": "^4.0.0",
127
+ "@directivegames/genesys.js": "^3.1.24",
128
+ "jsdom": "^27.0.0",
129
+ "minimatch": "^10.0.1",
130
+ "multer": "^2.0.2",
131
+ "node-abi": "^4.14.0",
132
+ "react": "^19.2.0",
133
+ "react-dom": "^19.2.0",
134
+ "three": "^0.177.0",
135
+ "upath": "^2.0.1",
136
+ "ws": "^8.18.2",
137
+ "zod": "^3.24.4"
138
+ },
139
+ "devDependencies": {
140
+ "@electron/notarize": "^3.1.0",
141
+ "@modelcontextprotocol/sdk": "^1.22.0",
142
+ "@types/cors": "^2.8.18",
143
+ "@types/electron-store": "^1.3.1",
144
+ "@types/express": "^5.0.2",
145
+ "@types/jsdom": "^27.0.0",
146
+ "@types/minimatch": "^5.1.2",
147
+ "@types/multer": "^1.4.12",
148
+ "@types/react": "^19.2.0",
149
+ "@types/react-dom": "^19.2.0",
150
+ "@types/three": "^0.177.0",
151
+ "@types/ws": "^8.18.1",
152
+ "@typescript-eslint/eslint-plugin": "^8.29.1",
153
+ "@typescript-eslint/parser": "^8.29.1",
154
+ "@vitejs/plugin-react": "^4.4.1",
155
+ "ajv": "^8.17.1",
156
+ "concurrently": "^9.1.2",
157
+ "dotenv-cli": "^8.0.0",
158
+ "electron": "^39.2.3",
159
+ "electron-builder": "^26.0.12",
160
+ "eslint": "^9.24.0",
161
+ "eslint-plugin-import": "^2.31.0",
162
+ "get-port": "^7.1.0",
163
+ "nanoid": "^5.1.6",
164
+ "nodemon": "^3.1.10",
165
+ "ts-morph": "^27.0.2",
166
+ "tsc-watch": "^7.1.0",
167
+ "tsx": "^4.20.6",
168
+ "typescript": "^5.8.3",
169
+ "vite": "^6.3.5",
170
+ "vite-plugin-mkcert": "^1.17.9",
171
+ "vite-plugin-node-polyfills": "^0.24.0",
172
+ "wait-on": "^8.0.4",
173
+ "yaml": "^2.6.1",
174
+ "zod-to-json-schema": "^3.25.0"
175
+ }
176
+ }