Skip to content

Standalone Production Packaging

Aneeth Kumaar edited this page Jul 17, 2026 · 2 revisions

Running npm start executes Keystone in development mode, which hooks directly into your terminal environment. When you are ready to compile the workspace down into an absolute, production-grade standalone application framework that functions independently of terminal scripts, follow the steps below.


Prerequisites: Custom Branding Assets

Before running the distribution pipeline compiler, make sure your custom application icon assets have been placed in the directory mapped inside forge.config.js. The builder will fail if these files are missing:

  • assets/branding/icon.icns (macOS Flat Container File)
  • assets/branding/icon.ico (Windows Core Installer Icon)
  • assets/branding/icon.png (Linux Desktop Package Icon)

The Compilation Pipeline

Run the absolute production generation script tool from the root directory of the application:

npm run make

What Forge executes during this pass:

  1. The Application Package Phase: Shuts down development listeners, minifies source structures, and bundles files cleanly into an isolated, tamper-resistant ASAR package container.
  2. The Fuse Optimization Step: Tweaks core application parameters before code signature passes occur. This includes shutting down standard RunAsNode flags to block external script injection threats.
  3. The Maker Generation Loop: Calls custom packaging modules to build your native system distribution wrappers (like disk images for Mac, standalone setup installers for Windows, and system package configurations for Linux). Finding Output Bundles Once the success block prints out to your terminal screen, look inside your freshly generated project folder root location: out/make/

Inside this target folder, you will find your platform installers:

  • macOS: A .dmg drag-and-drop file configuration image or raw .zip target testing package containing Keystone.app.
  • Windows: A compiled Keystone Setup.exe file.
  • Linux: A .deb or .rpm systems archive ready to link into native software management layers.

Clone this wiki locally