Skip to main content
The main electron-builder module exports the primary build functions and re-exports types from app-builder-lib.

Installation

Main Functions

build()

Builds the application for the specified platforms and targets.
PackagerOptions & PublishOptions
required
Combined build and publish options.
Packager
Optional Packager instance.
Returns: Promise<Array<string>> - Array of artifact paths. Example:

createTargets()

Creates a target map for specified platforms.
Array<Platform>
required
Array of platforms to build for (e.g., [Platform.MAC, Platform.WINDOWS]).
string | null
Target type (e.g., "dmg", "nsis"). If null, builds default targets.
string | null
Architecture: "x64", "arm64", "ia32", "armv7l", or "all".
Returns: Target map for use with build(). Example:

Platform Class

Represents a build platform.

Static Properties

Platform
macOS platform instance.
Platform
Windows platform instance.
Platform
Linux platform instance.

Methods

createTarget()

Creates targets for this platform.
string | Array<string> | null
Target type(s) (e.g., "dmg", ["dmg", "zip"]).
...Array<Arch>
Architectures to build for.
Example:

fromString()

Converts a string to a Platform instance.
string
required
Platform name: "mac", "darwin", "win", "win32", "windows", or "linux".
Example:

Arch Enum

Architecture enumeration.

Functions

archFromString()

Converts a string to an Arch value.
string
required
Architecture name: "ia32", "x64", "armv7l", "arm64", or "universal".

getArchSuffix()

Gets the suffix for an architecture.

Exported Types

The module re-exports all types from app-builder-lib:

Configuration Types

  • Configuration - Main configuration interface
  • MacConfiguration - macOS-specific options
  • WindowsConfiguration - Windows-specific options
  • LinuxConfiguration - Linux-specific options
  • PlatformSpecificBuildOptions - Common platform options

Target Options

  • DmgOptions - DMG target options
  • PkgOptions - PKG target options
  • NsisOptions - NSIS installer options
  • NsisWebOptions - NSIS web installer options
  • PortableOptions - Portable app options
  • AppImageOptions - AppImage options
  • SnapOptions - Snap package options
  • DebOptions - Debian package options
  • AppXOptions - AppX package options
  • MsiOptions - MSI installer options
  • SquirrelWindowsOptions - Squirrel.Windows options

Core Types

  • Packager - Main packager class
  • BuildResult - Build result interface
  • PackagerOptions - Packager options
  • Target - Build target abstract class
  • TargetConfiguration - Target configuration
  • BeforeBuildContext - Before build hook context
  • AfterPackContext - After pack hook context

File and Asset Types

  • FileAssociation - File association configuration
  • Protocol - URL protocol configuration
  • FileSet - File set specification
  • AsarOptions - ASAR archive options

Metadata Types

  • Metadata - package.json metadata
  • AuthorMetadata - Author information
  • RepositoryInfo - Repository information
  • AppInfo - Application information

Code Signing

  • WindowsSignOptions - Windows code signing
  • CustomWindowsSign - Custom Windows signing
  • CustomMacSign - Custom macOS signing

Artifact Events

  • ArtifactCreated - Artifact creation event
  • ArtifactBuildStarted - Artifact build start event

Publishing

  • PublishOptions - Publishing options
  • PublishManager - Publish manager class
  • UploadTask - Upload task interface

Platform Packagers

  • MacPackager - macOS packager
  • WinPackager - Windows packager
  • LinuxPackager - Linux packager

Utilities

  • CancellationToken - Cancellation token
  • ProgressInfo - Download progress info
  • log - Logger utility

Import Examples

CommonJS

ES Modules / TypeScript

See Also