diff --git a/SUMMARY.md b/SUMMARY.md index c3c9ed5..1c72788 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -4,6 +4,11 @@ * [Importing an Existing Project](import-existing-project.md) * [CLI](cli.md) +## Core Concepts + +* [Why Electron Forge](core-concepts/why-electron-forge.md) +* [Build Lifecycle](core-concepts/build-lifecycle.md) + ## Configuration * [Overview](config/configuration.md) @@ -35,11 +40,6 @@ * [Snapcraft](config/publishers/snapcraft.md) * [Hooks](config/hooks.md) -## Core Concepts - -* [Why Electron Forge](core-concepts/why-electron-forge.md) -* [Build Lifecycle](core-concepts/build-lifecycle.md) - ## Built-in Templates * [Vite](templates/vite.md) diff --git a/core-concepts/build-lifecycle.md b/core-concepts/build-lifecycle.md index 9acaf04..1599e7c 100644 --- a/core-concepts/build-lifecycle.md +++ b/core-concepts/build-lifecycle.md @@ -6,8 +6,6 @@ description: How Forge takes your app code from development to distribution. Once your app is ready to be released, Electron Forge can handle the rest to make sure it gets into your users' hands. The complete build flow for Electron Forge can be broken down into three smaller steps: -
Flowchart showing the Electron Forge build flow. Starting with a "development Electron app", the first step is "Package". Package has an output of "executable app bundle" and flows into the "Make" step. Make has an output of "installers or archives" and flows into the "Publish" step. Publish has an output of "uploaded to cloud storage for distribution". Each step depends on the previous one.

Forge's build flow

- Each one of these steps is a separate command exposed through Forge's `electron-forge` command line interface, and is usually mapped to a script in your package.json file. {% hint style="info" %} @@ -16,6 +14,17 @@ Each one of these steps is a separate command exposed through Forge's `electron- Running each of these tasks will also run the previous ones in the sequence (i.e. running the `electron-forge publish` script will first run `package` and `make` as prerequisite steps). {% endhint %} +```mermaid fullWidth="false" +graph TB + dev["fa:fa-code development Electron project"] -.-> package + publish -.-> cloud + subgraph forge["fa:fa-hammer Electron Forge"] + package["fa:fa-box Package"] -->|executable app bundle| make + make["fa:fa-compact-disc Make"] -->|platform installers| publish["fa:fa-upload Publish"] + end + cloud["fa:fa-cloud Uploaded to cloud object storage"] +``` + ## Step 1: Package {% hint style="info" %}