🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
Book a DemoInstallSign in
Socket

setil

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

setil

node.js SEA utility

0.0.1-a
latest
Source
npm
Version published
Weekly downloads
3
Maintainers
1
Weekly downloads
 
Created
Source

Setil - single executable applications utility

The goal of this package is to help you build node.js SEA with ease.

CLI Example

CLI usage is not implemented yet.

Code Example

import { compile } from "setil";
import { readFileSync } from "node:fs";
import { resolve } from "nod:path";

const input = readFileSync("src/index.js", "utf-8");
const output = `./app.exe`;

await setil.compile(input, output);

// Enjoy!

Usage

compile(input: string, rawOutput: string, rawOptions?: Partial<Options>): Promise<Result>

  • input - The input code, as SEA doesn't accept imports after compilation, you can use rollup to bundle your project into a single file. You can also check rollup-plugin-jsative if you use native modules.
  • output (rawOutput) - The output path of your application, e.g. ./program.exe.
  • options (rawOptions) - Any additional customization, checkout Options

Options

PropertyTypeDefaultDescription
logLevelLogLevel"warn"Specifies the desired log level for the application.
disableSeaWarningbooleanfalseDisables (node:16104) ExperimentalWarning: Single executable application is an experimental feature and might change at any time
useSnapshotbooleanfalseStartup Snapshots
useCodeCachebooleanfalseV8 Code Cache
nodeExePathstring | undefinedprocess.execPathThe path where the blob should be injected into (Optional)
noSignbooleantrueControls whether to remove the original Node.JS signature.
preInject(path: string) => any | PromiseNoop (no operation)A hook executed just before the blob is injected into the application can be used to modify the nodeExePath file.

Types

Result

PropertyTypeDescription
inputstringThe input code used.
outputPathstringThe output path of the SEA.
nodeExePathstringThe nodeExePath used.
tempDirstringThe temporary directory used.

LogLevel

One of debug, warn or silent

  • debug - Show debug logs
  • warn - Show warnings only (default)
  • silent - Don't print anything

Resources

FAQs

Package last updated on 26 Sep 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts