zosenlink-node-client
v1.0.3
Published
Node.js wrapper for the ZosenLink managed frpc client.
Readme
ZosenLink Node Client
zosenlink-node-client is a minimal managed frpc wrapper for Node.js hosts. It accepts exactly one positional argument: the activation key.
./zosenlink-node-client <activation-key>The platform URL is fixed to https://zosen.link. Runtime status events are emitted to stdout as JSON Lines, one object per line, so Node.js can listen to child.stdout.
Example:
import { spawn } from "node:child_process";
const child = spawn("./zosenlink-node-client", ["dev-activation-key"]);
child.stdout.on("data", (chunk) => {
for (const line of chunk.toString().trim().split("\n")) {
if (!line) continue;
console.log(JSON.parse(line));
}
});
child.stderr.on("data", (chunk) => {
console.error(chunk.toString());
});NPM wrapper example:
const { startZosenLinkClient } = require("zosenlink-node-client");
const child = startZosenLinkClient("dev-activation-key", {
onEvent(event) {
console.log(event);
}
});
child.stderr.on("data", (chunk) => {
process.stderr.write(chunk);
});The npm package expects platform binaries under:
bin/
darwin-arm64/zosenlink-node-client
darwin-x64/zosenlink-node-client
linux-x64/zosenlink-node-client
win32-x64/zosenlink-node-client.exeBuild examples:
cd apps/zosenlink-node-client
GOOS=darwin GOARCH=arm64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o bin/darwin-arm64/zosenlink-node-client .
GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o bin/darwin-x64/zosenlink-node-client .
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o bin/linux-x64/zosenlink-node-client .
GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o bin/win32-x64/zosenlink-node-client.exe .
# Optional artifact build path used by the repo:
go build -trimpath -ldflags='-s -w' -o ../../artifacts/zosenlink-node-client-darwin-arm64/zosenlink-node-client .
GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o ../../artifacts/zosenlink-node-client-linux-amd64/zosenlink-node-client .
GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -trimpath -ldflags='-s -w' -o ../../artifacts/zosenlink-node-client-win64/zosenlink-node-client.exe .