# electron/forge

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/electron-forge).**

6,992 stars · 611 forks · TypeScript · mit

## Links

- GitHub: https://github.com/electron/forge
- Homepage: https://electronforge.io
- awesome-repositories: https://awesome-repositories.com/repository/electron-forge.md

## Topics

`build` `electron` `hacktoberfest` `javascript` `linux` `macos` `package` `typescript` `webpack` `windows`

## Description

Forge is a build toolchain for Electron desktop applications that provides a system for bootstrapping projects, recompiling native modules, and packaging and publishing application binaries. It functions as an application bundler and distribution publisher, automating the process of turning source code into platform-specific executables and installers.

The toolset uses a plugin-based pipeline to automate the build process, allowing for the integration of third-party extensions for asset bundling or security auditing. It employs specialized modules to transform packaged applications into distributable formats and uses dedicated handlers to push final artifacts to remote storage targets.

The framework covers a broad range of development workflows, including project initialization via templates, native C++ module rebuilding for runtime compatibility, and the generation of cross-platform installers. It also includes utilities for importing existing applications into a compatible format and diagnostic logging for troubleshooting build failures.

## Tags

### Development Tools & Productivity

- [Electron Application Packagers](https://awesome-repositories.com/f/development-tools-productivity/electron-application-packagers.md) — Bundles Electron application source code into native installers and executables. ([source](https://www.electronforge.io/configuration))
- [Build Pipeline Customization](https://awesome-repositories.com/f/development-tools-productivity/build-pipeline-customization.md) — Provides an interface for adding custom build logic and defining new storage targets through a plugin architecture. ([source](https://www.electronforge.io/))
- [Build Pipeline Plugins](https://awesome-repositories.com/f/development-tools-productivity/build-pipeline-plugins.md) — Implements a plugin-based pipeline that allows third-party extensions to inject logic into the build and packaging process.
- [Build Plugins](https://awesome-repositories.com/f/development-tools-productivity/build-tooling/build-orchestration-logic/build-orchestration-configuration/build-lifecycle-orchestrators/build-plugins.md) — Allows the integration of third-party plugins into the build process for tasks like asset bundling and security auditing. ([source](https://www.electronforge.io/configuration))
- [Artifact Distribution](https://awesome-repositories.com/f/development-tools-productivity/cross-platform-build-pipelines/artifact-distribution.md) — Automates the transfer of finalized build artifacts to remote storage targets via dedicated publisher handlers.
- [Distribution Artifacts](https://awesome-repositories.com/f/development-tools-productivity/distribution-artifacts.md) — Generates platform-specific installers and distributable binaries from packaged applications.
- [Electron Application Development Tooling](https://awesome-repositories.com/f/development-tools-productivity/electron-application-development-tooling.md) — Provides a complete toolchain for setting up the project structure and managing development dependencies for Electron apps.
- [Distribution Publishers](https://awesome-repositories.com/f/development-tools-productivity/electron-application-packagers/distribution-publishers.md) — Provides dedicated handlers to push finalized application binaries and installers to remote storage targets.
- [Electron Build Toolchains](https://awesome-repositories.com/f/development-tools-productivity/electron-build-toolchains.md) — Provides a complete toolset for configuring, packaging, and distributing desktop applications built with the Electron framework.
- [Build Configuration Schemas](https://awesome-repositories.com/f/development-tools-productivity/build-configuration-schemas.md) — Provides a centralized schema to define how source code and dependencies are bundled into platform-specific executable folders.
- [Artifact Publishing Utilities](https://awesome-repositories.com/f/development-tools-productivity/dependency-managers/artifact-distribution-systems/package-publishing/artifact-publishing-utilities.md) — Uploads generated distributables to remote storage targets using configurable publishing methods. ([source](https://www.electronforge.io/))
- [Project Bootstrappers](https://awesome-repositories.com/f/development-tools-productivity/project-bootstrappers.md) — Provides templates and initialization utilities to bootstrap new Electron project directory structures.
- [Project Bootstrapping Templates](https://awesome-repositories.com/f/development-tools-productivity/project-bootstrapping-templates.md) — Generates initial directory structures and configuration files from predefined blueprints to standardize the development environment.
- [Project Initializers](https://awesome-repositories.com/f/development-tools-productivity/project-initializers.md) — Includes a command-line utility to bootstrap new application directories using specified templates. ([source](https://www.electronforge.io/cli))

### DevOps & Infrastructure

- [Automated Build Pipelines](https://awesome-repositories.com/f/devops-infrastructure/cicd-pipeline-automation/core-build-engines/build-tooling/automated-build-pipelines.md) — Automates the build process with plugins for asset bundling, security auditing, and native module recompilation.
- [Cross-Platform Installers](https://awesome-repositories.com/f/devops-infrastructure/distribution-packaging/software-distribution/native-installers/cross-platform-installers.md) — Creates executable installers and binaries that function across multiple operating systems and hardware architectures.
- [Binary Publication Workflows](https://awesome-repositories.com/f/devops-infrastructure/binary-publication-workflows.md) — Automates the publication of compiled Electron binaries and installers to remote targets for software releases.

### Mobile Development

- [Native Module Recompilers](https://awesome-repositories.com/f/mobile-development/native-modules-bridges/native-module-recompilers.md) — Recompiles native C++ modules against the specific Electron runtime version to ensure binary compatibility. ([source](https://www.electronforge.io/configuration))

### Programming Languages & Runtimes

- [Cross-Platform Binary Generation](https://awesome-repositories.com/f/programming-languages-runtimes/source-code-compilers/multi-target-compilers/cross-platform-binary-generation.md) — Generates platform-specific executable binaries and installers based on target platforms and project configuration. ([source](https://www.electronforge.io/cli))
