Where Does electron-builder Store Config and Output?
electron-builder reads electron-builder.yml in your project and writes installers to dist, with download caches in ~/.cache/electron-builder.
Last updated
electron-builder splits its footprint between project config and generated output. The yml file (or package.json build key) declares app id, files, targets, and publish settings. The dist folder collects the built installers per platform plus unpacked trees and update metadata.
Download caches live outside the project in the user cache dir: Electron binaries, Wine mono/gecko for Windows targets on Linux, and code-signing tools. Wiping dist is routine; wiping the cache only costs redownload time on the next build.
Where Electron Builder stores this, by platform
[ProjectDir]\electron-builder.yml
Packaging targets, file sets, and publish config. The dist folder beside it holds installers and unpacked output. Wipe dist freely; it regenerates from config plus source.
[ProjectDir]/electron-builder.yml
Same project-relative layout on macOS, where notarization settings and signing identities matter most. The download cache holds the extra tooling builds fetch.
[ProjectDir]/electron-builder.yml
Same arrangement. Wine-based Windows builds cache their support packages in ~/.cache/electron-builder, shared across all your projects.
Frequently asked questions
The dist folder is huge. Can I delete it?
Delete dist and rebuild. It holds only generated installers, unpacked apps, and blockmaps. The yml config plus app source regenerate it fully on the next run.
Should dist be committed?
Yes. Commit electron-builder.yml, package.json, and app code. The dist output and the download cache regenerate; the cache especially should never enter a repo.
Notice an outdated path? Let us know.