https://github.com/sectly/exeup
Exeup: Pack up and bundle your Node.js project into a single .exe file for easy distribution and hassle-free execution on Windows!
https://github.com/sectly/exeup
binary build bundle compile exe exeup node windows
Last synced: 4 months ago
JSON representation
Exeup: Pack up and bundle your Node.js project into a single .exe file for easy distribution and hassle-free execution on Windows!
- Host: GitHub
- URL: https://github.com/sectly/exeup
- Owner: Sectly
- License: mit
- Created: 2025-02-10T13:05:06.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-12T09:17:25.000Z (over 1 year ago)
- Last Synced: 2026-02-10T21:09:08.209Z (4 months ago)
- Topics: binary, build, bundle, compile, exe, exeup, node, windows
- Language: JavaScript
- Homepage: https://www.npmjs.com/package/exeup
- Size: 74.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Exeup
Exeup: Pack up and bundle your Node.js project into a single .exe file for easy distribution and hassle-free execution on Windows!
---
## 📌 Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Using the CLI](#using-the-cli)
- [Using the npm Package](#using-the-npm-package)
- [Configuration (CLI Only)](#configuration-cli-only)
- [Options](#options)
- [License](#license)
---
## 🚀 Installation
### Install as a CLI Tool
To install Exeup globally, run:
```sh
npm install -g exeup
```
### Install as a Developer Dependency
To use Exeup within a Node.js project:
```sh
npm install -D exeup
```
---
## 🔧 Usage
### Using the CLI
Once installed, you can use the `exeup` command to package your Node.js project into an executable file.
#### Initialize Configuration
Before building, configure Exeup by running:
```sh
exeup config
```
This will prompt you for essential configuration details, such as the entry file, output path, version, and execution level.
#### Build an Executable
To create an executable from your project:
```sh
exeup build
```
#### Check Version
To check the installed version of Exeup:
```sh
exeup version
```
#### View Help
For a list of available commands:
```sh
exeup help
```
---
### Using the npm Package
Exeup can be used programmatically within your Node.js project.
#### Example Usage
```javascript
const exeup = require('exeup');
const options = {
entry: './index.js',
out: './build/myapp.exe',
version: '1.0.0',
icon: './assets/icon.ico',
skipBundle: false,
executionLevel: 'asInvoker',
properties: {
FileDescription: 'My Application',
ProductName: 'MyApp',
LegalCopyright: 'My Company',
OriginalFilename: 'myapp.exe',
}
};
exeup(options, (progressData) => {
console.log(`${progressData.progress}% - ${progressData.message}`);
if (progressData.done) {
console.log('Executable successfully created!');
}
}).catch(console.error);
```
---
## ⚙️ Configuration (CLI Only)
The CLI tool relies on a configuration file (`exeup.config.json`). You can generate this file using:
```sh
exeup config
```
Example `exeup.config.json`:
```json
{
"entry": "./index.js",
"out": "./build/myapp.exe",
"version": "1.0.0",
"icon": "./assets/icon.ico",
"skipBundle": false,
"executionLevel": "asInvoker",
"properties": {
"FileDescription": "My Application",
"ProductName": "MyApp",
"LegalCopyright": "My Company",
"OriginalFilename": "myapp.exe"
}
}
```
---
## ⚡ Options
| Option | Type | CLI Only | Description |
|---------------------|---------|----------|-----------------------------------------------------------------------------------------------------|
| `entry` | String | No | The entry file of your application. |
| `out` | String | No | The output file path for the generated executable. |
| `version` | String | No | The application version number. |
| `icon` | String | No | The path to an `.ico` or `.png` file for the application icon. |
| `skipBundle` | Boolean | No | If `true`, skips the bundling process. |
| `executionLevel` | String | No | Sets execution privileges (`asInvoker`, `highestAvailable`, or `requireAdministrator`). |
| `properties` | Object | No | Custom metadata (e.g., `FileDescription`, `ProductName`). |
| `exeup.config.json`| File | Yes | The CLI configuration file. Not required when using Exeup as a package. |
---
## 📜 License
Exeup is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.
---
## 📂 Source Code
Find the source code on GitHub: [Sectly/Exeup](https://github.com/Sectly/Exeup)