Skip to content

Commit a7c9500

Browse files
committed
feat: setup server binaries generation
1 parent 162a8a0 commit a7c9500

7 files changed

Lines changed: 53 additions & 18 deletions

File tree

.github/workflows/release.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ jobs:
2525

2626
- run: npm run build
2727

28+
- run: npm run pkg:server
29+
2830
- name: Release
2931
run: npx semantic-release
3032
env:

bindings/js/sdk/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"os": [
1414
"darwin",
1515
"linux",
16-
"windows"
16+
"win32"
1717
],
1818
"main": "./src/main.js",
1919
"exports": {

implementations/js/client/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,12 @@
88
},
99
"description": "ASLS's WSC (Web Show Control) client",
1010
"engines": {
11-
"node": ">=20"
11+
"node": "18"
1212
},
1313
"os": [
1414
"darwin",
1515
"linux",
16-
"windows"
16+
"win32"
1717
],
1818
"main": "src/main.js",
1919
"exports": {

implementations/js/server/package.json

Lines changed: 28 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,53 @@
11
{
22
"version": "1.0.0",
33
"name": "@asls/wsc-server",
4-
"type": "module",
54
"private": false,
65
"publishConfig": {
76
"access": "public"
87
},
98
"description": "ASLS's WSC (Web Show Control) server",
109
"engines": {
11-
"node": ">=20"
10+
"node": "18"
1211
},
1312
"os": [
1413
"darwin",
1514
"linux",
16-
"windows"
15+
"win32"
1716
],
18-
"main": "./dist/server.js",
17+
"bin": "./dist/main.cjs",
18+
"pkg": {
19+
"scripts": "dist/**/*.cjs",
20+
"assets": [
21+
"./dist/**/*",
22+
"../../../node_modules/**/*"
23+
],
24+
"options": {
25+
"no-bytecode": true,
26+
"public-packages": "*"
27+
},
28+
"targets": [
29+
"node18-macos-x64",
30+
"node18-linux-x64",
31+
"node18-windows-x64",
32+
"node18-macos-arm64",
33+
"node18-linux-arm64",
34+
"node18-windows-arm64"
35+
],
36+
"outputPath": "./dist/bin"
37+
},
38+
"main": "./dist/main.cjs",
1939
"exports": {
20-
".": "./dist/server.js"
40+
".": "./dist/main.cjs"
2141
},
2242
"files": [
2343
"dist"
2444
],
2545
"scripts": {
2646
"test": "echo \"Error: no test specified\" && exit 1",
2747
"dev": "tsx watch ./src/main.js",
28-
"start": "node ./src/main.js",
29-
"build": "node ./src/scripts/build.js"
48+
"start": "node ./dist/main.cjs",
49+
"build": "node ./src/scripts/build.js",
50+
"pkg": "npm run build; npx pkg ."
3051
},
3152
"author": "Timé Kadel",
3253
"license": "GPL-3.0-only",

implementations/js/server/src/scripts/build.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ async function run() {
1414
console.log('⚡ Building server...');
1515

1616
await build({
17-
entryPoints: ['./src/server.js'],
18-
outfile: './dist/server.js',
17+
entryPoints: ['./src/main.js'],
18+
outfile: './dist/main.cjs',
1919
bundle: true,
2020
platform: 'node',
2121
target: 'node20',
22-
format: 'esm',
22+
format: 'cjs',
2323
external: [
2424
'@roamhq/wrtc',
2525
'systeminformation',
@@ -32,9 +32,9 @@ async function run() {
3232
await readFile('./package.json', 'utf-8'),
3333
);
3434

35-
pkg.main = './server.js';
35+
pkg.main = './main.js';
3636
pkg.exports = {
37-
'.': './server.js',
37+
'.': './main.js',
3838
};
3939

4040
await writeFile(

package-lock.json

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"version": "1.0.0",
33
"name": "@asls/wsc",
4-
"type": "module",
54
"private": true,
65
"description": "ASLS's WSC protocol (Web Show Control)",
76
"engines": {
@@ -10,7 +9,7 @@
109
"os": [
1110
"darwin",
1211
"linux",
13-
"windows"
12+
"win32"
1413
],
1514
"workspaces": [
1615
"./bindings/js/sdk",
@@ -22,6 +21,7 @@
2221
"dev:client": "npm run dev --workspace=@asls/wsc-client",
2322
"dev:server": "npm run dev --workspace=@asls/wsc-server",
2423
"build": "npm run build --workspace=@asls/wsc-server",
24+
"pkg:server": "npm run pkg --workspace=@asls/wsc-server",
2525
"lint": "npm run lint --workspaces",
2626
"lint:fix": "npm run lint:fix --workspaces",
2727
"format": "prettier --write .",
@@ -68,7 +68,16 @@
6868
"publishCmd": "node scripts/publish.js"
6969
}
7070
],
71-
"@semantic-release/github"
71+
[
72+
"@semantic-release/github",
73+
{
74+
"assets": [
75+
{
76+
"path": "implementations/js/server/dist/bin/*"
77+
}
78+
]
79+
}
80+
]
7281
]
7382
}
7483
}

0 commit comments

Comments
 (0)