#nodejs #cross-platform #bundler #js #executable #cache

app banderole

A cross-platform Node.js single-executable bundler

8 releases

new 0.2.2 Nov 29, 2025
0.2.1 Jul 28, 2025
0.1.0 Jul 26, 2025
0.0.5 Jul 26, 2025

#85 in Operating systems

Download history 218/week @ 2025-08-13 100/week @ 2025-08-20 160/week @ 2025-08-27 144/week @ 2025-09-03 34/week @ 2025-09-10 41/week @ 2025-09-17 53/week @ 2025-09-24 113/week @ 2025-10-01 32/week @ 2025-10-08 42/week @ 2025-10-15 25/week @ 2025-10-22 21/week @ 2025-10-29 96/week @ 2025-11-05 23/week @ 2025-11-12 32/week @ 2025-11-19 596/week @ 2025-11-26

747 downloads per month

MIT license

140KB
3.5K SLoC

Banderole

Create cross-platform single-executables for Node.js projects. Windows is not supported.

Banderole bundles your Node.js app, all dependencies, and a portable Node binary into a single native executable. On first launch, it unpacks to a cache directory for fast subsequent executions.

Unlike Node.js SEA or pkg, banderole handles complex projects with dynamic imports and non-JavaScript files without requiring patches, but since it includes all dependencies by default, it has significantly larger filesize.

Requirements

Banderole requires the Rust toolchain to be installed on your system to build portable executables.

Installation

cargo install banderole

Usage

# Bundle a project using the project name
banderole bundle /path/to/project

# Bundle with custom output path
banderole bundle /path/to/project --output /path/to/output/executable

# Bundle with custom name
banderole bundle /path/to/project --name my-app

# Bundle with both custom output and name
banderole bundle /path/to/project --output /path/to/my-app --name my-app

Feature List

  • Support Linux, MacOS, and Windows for both x64 and arm64 architectures.
  • Support custom node.js version based on project's .nvmrc and .node-version
  • Support TypeScript projects with automatic detection of compiled output directories
  • Support workspaces (only pnpm workspaces tested)
  • Only the executable has permissions to read and execute bundled files

License

MIT

Dependencies

~21–40MB
~595K SLoC