{"id":26545,"library":"tx-webbr-automation","title":"tx-webbr-automation","description":"A build pipeline tool for packaging Node.js applications into single executable binaries using Node.js Single Executable Applications (SEA). Version 0.1.20 compiles TypeScript with tsc, bundles with esbuild, generates a SEA blob, injects it into the Node.js binary, and optionally signs the resulting executable for distribution. Key differentiators: integrates TypeScript compilation, bundling, and SEA injection into one pipeline; supports code signing on Windows. Caution: SEA is experimental and Node-version-dependent; not recommended for production without controlling the Node runtime version.","status":"active","version":"0.1.20","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","typescript"],"install":[{"cmd":"npm install tx-webbr-automation","lang":"bash","label":"npm"},{"cmd":"yarn add tx-webbr-automation","lang":"bash","label":"yarn"},{"cmd":"pnpm add tx-webbr-automation","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Named export, not default.","wrong":"import auto from 'tx-webbr-automation'","symbol":"auto","correct":"import { auto } from 'tx-webbr-automation'"},{"note":"ESM-only package; CommonJS require will fail.","wrong":"const { build } = require('tx-webbr-automation')","symbol":"build","correct":"import { build } from 'tx-webbr-automation'"},{"note":"TypeScript type export, use import type for runtime exclusion.","symbol":"SEAConfig","correct":"import type { SEAConfig } from 'tx-webbr-automation'"},{"note":"Named export only; ESM import required.","wrong":"const createSEA = require('tx-webbr-automation').createSEA","symbol":"createSEA","correct":"import { createSEA } from 'tx-webbr-automation'"}],"quickstart":{"code":"import { build } from 'tx-webbr-automation';\n\nbuild({\n  input: './dist/index.js',\n  output: './myapp.exe',\n  nodeExecutable: './node.exe',\n  seaConfig: {\n    main: './sea-main.js',\n    output: './sea.blob',\n  },\n  sign: false,\n}).then(() => {\n  console.log('SEA executable created');\n}).catch(err => {\n  console.error('Build failed:', err);\n});","lang":"typescript","description":"Creates an SEA executable from a bundled JavaScript file, using a custom Node binary."},"warnings":[{"fix":"Ensure the Node.js executable used for injection matches the target runtime version exactly.","message":"SEA blobs are tied to the exact Node.js binary version used. Using a different Node version at runtime may crash or fail silently.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Run with NODE_DEBUG=sea to get detailed SEA logs.","message":"SEA failures may not produce error messages. Set NODE_DEBUG=sea environment variable to see debug output.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Use signtool on Windows to sign the executable.","message":"Windows may show 'The signature seems corrupted!' if the executable is not signed. Code signing is separate from SEA.","severity":"gotcha","affected_versions":">=0.1.0"},{"fix":"Use import syntax or dynamic import() instead.","message":"The package is ESM-only. Using require() will throw an error.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Change to import { ... } from 'tx-webbr-automation' or use dynamic import().","cause":"Package is ESM-only; CommonJS require is not supported.","error":"ERR_REQUIRE_ESM: require() of ES Module"},{"fix":"Ensure the directory for the blob output exists, or use an absolute path.","cause":"The seaConfig.output path does not exist or is incorrectly specified.","error":"ENOENT: no such file or directory, open '.../sea.blob'"},{"fix":"Provide the correct path to the Node.js binary (node.exe on Windows).","cause":"The Node.js executable path is incorrect or the binary is not a valid Node executable.","error":"SEA blob injection failed: Invalid argument"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}