Skip to content

Commit 058b859

Browse files
committed
build: add npm run serve:dist to server from dist folder for quick testing in electron
1 parent 280aaa4 commit 058b859

2 files changed

Lines changed: 13 additions & 3 deletions

File tree

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
"_ci-releaseElectronApp": "cd src-electron && npm run build:appimage && cd ..",
2626
"_ci-update-phcode-build": "node src-build/update-phcode-build.js",
2727
"serve": "node src-build/serveForPlatform.js",
28+
"serve:dist": "node src-build/serveForPlatform.js --dist",
2829
"serve:tauri": "node src-build/serveForPlatform.js tauri",
2930
"serve:electron": "node src-build/serveForPlatform.js electron",
3031
"postinstall": "node ./src-build/downloadNodeBinary.js && node ./src-build/setupElectron.js",
@@ -49,4 +50,4 @@
4950
"branch": "tauri",
5051
"commit": "deb309997d34383ffc01c623902537ad095c79f3"
5152
}
52-
}
53+
}

src-build/serveForPlatform.js

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,15 @@ function createTauriDevConfig() {
3232
}
3333

3434
// Get target from CLI arg, or detect from platform
35-
const cliArg = process.argv[2];
35+
const cliArgs = process.argv.slice(2).filter(arg => !arg.startsWith('--'));
36+
const cliArg = cliArgs[0];
3637
let target;
3738

3839
if (cliArg === 'tauri' || cliArg === 'electron') {
3940
target = cliArg;
4041
} else if (cliArg) {
4142
console.error(`Unknown target: ${cliArg}`);
42-
console.error('Usage: npm run serve [tauri|electron]');
43+
console.error('Usage: npm run serve [tauri|electron] [--dist]');
4344
process.exit(1);
4445
} else {
4546
// Auto-detect: Linux uses Electron, Windows/Mac use Tauri
@@ -79,6 +80,7 @@ if (target === "tauri") {
7980
console.log('Starting Tauri dev server...');
8081
await execa("npx", ["tauri", "dev", "--config", "./src-tauri/tauri-local.conf.json"], {stdio: "inherit"});
8182
} else {
83+
const serveDist = process.argv.includes('--dist');
8284
const srcNodePath = resolve("../phoenix/src-node");
8385
console.log(`Running "npm install" in ${srcNodePath}`);
8486
await execa("npm", ["install"], {cwd: srcNodePath, stdio: "inherit"});
@@ -95,6 +97,13 @@ if (target === "tauri") {
9597
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
9698
const effectiveConfig = JSON.parse(readFileSync(configDest, 'utf8'));
9799
effectiveConfig.version = packageJson.version;
100+
101+
// When --dist flag is passed, serve from ../phoenix/dist instead of ../phoenix/src
102+
if (serveDist) {
103+
console.log('Serving from ../phoenix/dist (--dist mode)');
104+
effectiveConfig.phoenixLoadURL = effectiveConfig.phoenixLoadURL.replace('/src/', '/dist/');
105+
}
106+
98107
writeFileSync(configDest, JSON.stringify(effectiveConfig, null, 2));
99108

100109
console.log('Starting Electron...');

0 commit comments

Comments
 (0)