# Makers

Makers are Electron Forge's way of taking your packaged application and generating platform-specific distributable formats like [dmg](https://www.electronforge.io/config/makers/dmg "mention"), [appx](https://www.electronforge.io/config/makers/appx "mention"), or [flatpak](https://www.electronforge.io/config/makers/flatpak "mention") files (amongst others).

Each maker has to be configured in the `makers` section of your Forge configuration. For example:

{% tabs %}
{% tab title="forge.config.js" %}

```javascript
module.exports = {
  makers: [
    {
      name: '@electron-forge/maker-zip',
      platforms: ['darwin', 'linux'],
      config: {
        // the config can be an object
      }
    },
    {
      name: '@electron-forge/maker-dmg',
      config: (arch) => ({
        // it can also be a function taking the currently built arch
        // as a parameter and returning a config object, e.g.
      })
    }
  ]
};
```

{% endtab %}

{% tab title="package.json" %}

```json
// Only showing the relevant configuration for brevity
{
  "config": {
    "forge": {
      "makers": [
        {
          "name": "@electron-forge/maker-zip",
          "platforms": ["darwin", "linux"], // optional
          "config": {
              // Config here
          }
        }
      ]
    }
  }
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
If a Maker supports multiple platforms, you may specify which platforms you want to target. Note that all Makers have logical defaults for the `platforms` value so you normally don't need to specify that property.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.electronforge.io/config/makers.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
