When to use this skill
ALWAYS use this skill when the user mentions:
- Running Node.js as a sidecar process in Tauri
- Packaging Node.js binaries alongside the app
- Managing sidecar lifecycle (start, stop, logging)
Trigger phrases include:
- "sidecar", "node.js sidecar", "nodejs backend", "sidecar packaging", "bundled node"
How to use this skill
- Compile Node.js to a standalone binary using tools like
pkgornexe:npx pkg server.js -t node18-macos-x64,node18-win-x64,node18-linux-x64 - Place sidecar binaries in
src-tauri/binaries/with platform-specific naming:src-tauri/binaries/node-server-x86_64-apple-darwin src-tauri/binaries/node-server-x86_64-pc-windows-msvc.exe src-tauri/binaries/node-server-x86_64-unknown-linux-gnu - Configure the sidecar in
tauri.conf.json:{ "bundle": { "externalBin": ["binaries/node-server"] } } - Start the sidecar from Rust:
let sidecar = app.shell().sidecar("node-server").unwrap(); let (mut rx, child) = sidecar.spawn().unwrap(); - Configure shell permissions for the sidecar in capabilities
- Manage lifecycle: stop the sidecar gracefully on app exit using the child process handle
Outputs
- Sidecar binary packaging per platform
- Sidecar configuration in tauri.conf.json
- Start/stop lifecycle management in Rust
References
- https://v2.tauri.app/learn/sidecar-nodejs/
Keywords
tauri sidecar, node.js, nodejs backend, sidecar packaging, bundled binary