@djodjonx/x32-simulator 0.0.4 โ†’ 0.0.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.0.5](https://github.com/djodjonx/x32-simulator/compare/v0.0.4...v0.0.5) (2026-01-10)
6
+
7
+
8
+ ### Features
9
+
10
+ * **cli:** fix npx execution by adding dedicated bin entry point ([1b0de49](https://github.com/djodjonx/x32-simulator/commit/1b0de498b2706c7c8caf86488c8545742344b970))
11
+
5
12
  ### [0.0.4](https://github.com/djodjonx/x32-simulator/compare/v0.0.3...v0.0.4) (2026-01-08)
6
13
 
7
14
  ### [0.0.3](https://github.com/djodjonx/x32-simulator/compare/v0.0.2...v0.0.3) (2026-01-08)
package/README.md CHANGED
@@ -160,6 +160,28 @@ The simulator covers a vast majority of the X32 OSC command set:
160
160
 
161
161
  ---
162
162
 
163
+ ## ๐Ÿงช Testing Example (E2E)
164
+
165
+ The simulator is ideal for testing broadcast behavior and multi-client synchronization. When one client changes a parameter, the simulator automatically broadcasts that update to all other clients subscribed via `/xremote`.
166
+
167
+ You can find a complete, runnable example of this in [examples/dual-client-e2e.ts](./examples/dual-client-e2e.ts).
168
+
169
+ ### Multi-Client Sync Test Snippet
170
+
171
+ ```typescript
172
+ // Client A and Client B both subscribe to /xremote
173
+ clientA.send('/xremote');
174
+ clientB.send('/xremote');
175
+
176
+ // Client A changes a fader
177
+ clientA.send('/ch/01/mix/fader', 0.85);
178
+
179
+ // Result: BOTH Client A and Client B receive the update from the simulator
180
+ // This ensures your UI stays in sync across multiple devices.
181
+ ```
182
+
183
+ ---
184
+
163
185
  ## ๐Ÿค Contributing
164
186
 
165
187
  We welcome contributions! Please see [INSTALL.md](./INSTALL.md) for development instructions.
package/dist/server.cjs CHANGED
@@ -6,7 +6,6 @@ let node_fs = require("node:fs");
6
6
  node_fs = require_SchemaRegistry.__toESM(node_fs);
7
7
  let node_path = require("node:path");
8
8
  node_path = require_SchemaRegistry.__toESM(node_path);
9
- let node_url = require("node:url");
10
9
 
11
10
  //#region src/presentation/cli/server.ts
12
11
  const loadEnv = () => {
@@ -133,9 +132,9 @@ const bootstrap = async () => {
133
132
  process.exit(0);
134
133
  });
135
134
  };
136
- if (process.argv[1] === (0, node_url.fileURLToPath)(require("url").pathToFileURL(__filename).href)) bootstrap();
137
135
 
138
136
  //#endregion
139
- exports.bootstrap = bootstrap;
140
- exports.loadEnv = loadEnv;
141
- exports.parseArgs = parseArgs;
137
+ //#region src/presentation/cli/bin.ts
138
+ bootstrap();
139
+
140
+ //#endregion
package/dist/server.d.cts CHANGED
@@ -1,10 +1 @@
1
- #!/usr/bin/env node
2
- //#region src/presentation/cli/server.d.ts
3
- declare const loadEnv: () => void;
4
- declare const parseArgs: (argv: string[]) => {
5
- PORT: number;
6
- HOST: string;
7
- };
8
- declare const bootstrap: () => Promise<void>;
9
- //#endregion
10
- export { bootstrap, loadEnv, parseArgs };
1
+ export { };
package/dist/server.d.mts CHANGED
@@ -1,10 +1 @@
1
- #!/usr/bin/env node
2
- //#region src/presentation/cli/server.d.ts
3
- declare const loadEnv: () => void;
4
- declare const parseArgs: (argv: string[]) => {
5
- PORT: number;
6
- HOST: string;
7
- };
8
- declare const bootstrap: () => Promise<void>;
9
- //#endregion
10
- export { bootstrap, loadEnv, parseArgs };
1
+ export { };
package/dist/server.mjs CHANGED
@@ -3,7 +3,6 @@ import { a as ConsoleLogger, i as UdpNetworkGateway, n as SchemaFactory, o as Lo
3
3
  import * as readline from "node:readline";
4
4
  import * as fs from "node:fs";
5
5
  import * as path from "node:path";
6
- import { fileURLToPath } from "node:url";
7
6
 
8
7
  //#region src/presentation/cli/server.ts
9
8
  const loadEnv = () => {
@@ -130,7 +129,10 @@ const bootstrap = async () => {
130
129
  process.exit(0);
131
130
  });
132
131
  };
133
- if (process.argv[1] === fileURLToPath(import.meta.url)) bootstrap();
134
132
 
135
133
  //#endregion
136
- export { bootstrap, loadEnv, parseArgs };
134
+ //#region src/presentation/cli/bin.ts
135
+ bootstrap();
136
+
137
+ //#endregion
138
+ export { };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@djodjonx/x32-simulator",
3
- "version": "0.0.4",
3
+ "version": "0.0.5",
4
4
  "description": "X32 Simulator",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",