Skip to content
otariidaePublic

About

single executable application compiler for Node.js

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Repository files navigation

seac: Single Executable Application Compiler

NPM Version GitHub License Node.js CI

A simple command-line tool that bundles a Node.js program into a single executable binary that runs without a separate Node.js runtime. It is built on Node.js single executable applications (SEA).

Note

Node.js SEA remains experimental (Stability: 1.1). Treat generated executables as platform-specific release artifacts and test them on every target platform.

Installation

npm i -D seac

Usage

Windows:

seac hello.js hello.exe

Linux or macOS:

seac hello.js hello

Limitations

  • Requires Node.js v22 or higher.
  • Node.js v26+ uses Node's native --build-sea command. Node.js v22 and v24 use the compatible legacy setil/postject path.
  • seac emits a single CommonJS bundle. Although Node.js v26 SEA supports an ESM main entry, this CLI does not yet expose that mode.
  • Build on the target OS and architecture. SEA code cache and snapshots are not portable across platforms; seac leaves both disabled.
  • On macOS, seac ad-hoc signs executables built through the native Node.js v26+ path. Production distribution may require your own Developer ID signing and notarization.

Prior art

License

Apache-2.0

Technical notes

seac cannot be compiled to a single executable by itself because its dependency esbuild uses require.resolve, which cannot be bundled into a SEA entry point.

About

single executable application compiler for Node.js

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages