electron-builder-config
Generate and validate electron-builder configuration for multi-platform desktop builds with code signing, auto-update, and platform-specific packaging
Best use case
electron-builder-config is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Generate and validate electron-builder configuration for multi-platform desktop builds with code signing, auto-update, and platform-specific packaging
Teams using electron-builder-config should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/electron-builder-config/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How electron-builder-config Compares
| Feature / Agent | electron-builder-config | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Generate and validate electron-builder configuration for multi-platform desktop builds with code signing, auto-update, and platform-specific packaging
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# electron-builder-config
Generate and validate electron-builder configuration for multi-platform desktop builds. This skill handles the complete configuration for building Electron applications across Windows, macOS, and Linux with proper code signing, auto-update channels, and platform-specific installers.
## Capabilities
- Generate complete `electron-builder.yml` or `electron-builder.json5` configuration
- Configure platform-specific build targets (NSIS, DMG, AppImage, DEB, RPM, Snap, Flatpak)
- Set up code signing for Windows (Authenticode) and macOS (Developer ID)
- Configure auto-update settings with electron-updater
- Optimize build artifacts with compression and deduplication
- Validate existing configurations for common issues
- Generate CI/CD build scripts for GitHub Actions, Azure DevOps, CircleCI
## Input Schema
```json
{
"type": "object",
"properties": {
"projectPath": {
"type": "string",
"description": "Path to the Electron project root"
},
"appInfo": {
"type": "object",
"properties": {
"appId": { "type": "string", "description": "Application bundle ID (com.company.app)" },
"productName": { "type": "string" },
"copyright": { "type": "string" }
},
"required": ["appId", "productName"]
},
"platforms": {
"type": "array",
"items": { "enum": ["windows", "macos", "linux"] },
"description": "Target platforms to build for"
},
"targets": {
"type": "object",
"properties": {
"windows": { "type": "array", "items": { "enum": ["nsis", "nsis-web", "portable", "appx", "msi", "squirrel"] } },
"macos": { "type": "array", "items": { "enum": ["dmg", "pkg", "mas", "mas-dev", "zip"] } },
"linux": { "type": "array", "items": { "enum": ["AppImage", "deb", "rpm", "snap", "flatpak", "tar.gz"] } }
}
},
"codeSigning": {
"type": "object",
"properties": {
"windows": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"certificateSubjectName": { "type": "string" },
"timestampServer": { "type": "string" }
}
},
"macos": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"identity": { "type": "string" },
"hardenedRuntime": { "type": "boolean", "default": true },
"notarize": { "type": "boolean" }
}
}
}
},
"autoUpdate": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"provider": { "enum": ["github", "s3", "generic", "spaces", "keygen"] },
"channel": { "enum": ["latest", "beta", "alpha"] }
}
},
"generateCIScripts": {
"type": "boolean",
"description": "Generate CI/CD build scripts"
}
},
"required": ["projectPath", "appInfo", "platforms"]
}
```
## Output Schema
```json
{
"type": "object",
"properties": {
"success": { "type": "boolean" },
"configPath": { "type": "string", "description": "Path to generated config file" },
"config": { "type": "object", "description": "Generated electron-builder configuration" },
"ciScripts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"path": { "type": "string" },
"description": { "type": "string" }
}
}
},
"warnings": { "type": "array", "items": { "type": "string" } },
"recommendations": { "type": "array", "items": { "type": "string" } }
},
"required": ["success"]
}
```
## Usage Instructions
1. **Analyze project structure**: Examine package.json, existing build configs, and project layout
2. **Determine build requirements**: Based on target platforms and distribution needs
3. **Generate configuration**: Create electron-builder.yml with all necessary settings
4. **Validate configuration**: Check for common issues and missing dependencies
5. **Generate CI scripts**: If requested, create GitHub Actions or other CI workflows
## Configuration Templates
### Basic Multi-Platform Build
```yaml
appId: com.example.myapp
productName: MyApp
directories:
buildResources: build
output: dist
files:
- "**/*"
- "!**/*.{md,txt}"
- "!**/node_modules/*/{CHANGELOG.md,README.md,readme.md}"
win:
target:
- target: nsis
arch: [x64, ia32]
icon: build/icon.ico
mac:
target:
- target: dmg
arch: [x64, arm64]
icon: build/icon.icns
hardenedRuntime: true
gatekeeperAssess: false
linux:
target:
- target: AppImage
arch: [x64]
- target: deb
arch: [x64]
icon: build/icons
category: Utility
```
### With Code Signing and Notarization
```yaml
win:
sign: ./scripts/sign.js
signingHashAlgorithms: [sha256]
signDlls: true
mac:
identity: "Developer ID Application: Company Name (TEAMID)"
hardenedRuntime: true
entitlements: build/entitlements.mac.plist
entitlementsInherit: build/entitlements.mac.plist
afterSign: scripts/notarize.js
```
### With Auto-Update
```yaml
publish:
provider: github
owner: your-org
repo: your-repo
releaseType: release
nsis:
oneClick: false
perMachine: true
allowToChangeInstallationDirectory: true
differentialPackage: true
```
## Best Practices
1. **Always use `hardenedRuntime: true`** for macOS to pass notarization
2. **Enable `signingHashAlgorithms: [sha256]`** for modern Windows compatibility
3. **Use `differentialPackage: true`** for efficient auto-updates
4. **Configure `files` patterns** to exclude unnecessary files and reduce bundle size
5. **Set up separate channels** (latest, beta, alpha) for staged rollouts
6. **Store signing credentials** in CI secrets, never in config files
## Community References
- [electron-builder Documentation](https://www.electron.build/)
- [Electron Code Signing Guide](https://www.electronjs.org/docs/latest/tutorial/code-signing)
- [electron-scaffold skill](https://claude-plugins.dev/skills/@chrisvoncsefalvay/claude-skills/electron-scaffold)
- [Electron Distribution & Auto-Update](https://mcpmarket.com/tools/skills/electron-distribution-auto-update)
## Related Skills
- `electron-main-preload-generator` - Generate secure main process and preload scripts
- `electron-auto-updater-setup` - Configure electron-updater with advanced features
- `windows-authenticode-signer` - Windows code signing with signtool
- `macos-codesign-workflow` - macOS code signing and notarization
## Related Agents
- `electron-architect` - Expert in Electron architecture and best practices
- `desktop-ci-architect` - CI/CD pipeline design for desktop buildsRelated Skills
process-builder
Scaffold new babysitter process definitions following SDK patterns, proper structure, and best practices. Guides the 3-phase workflow from research to implementation.
idp-configurator
Configure Internal Developer Platform (IDP) components
developer-portal-builder
Build unified developer portals with Backstage or custom frameworks
cli-framework-builder
Build command-line interfaces for SDK interaction
api-gateway-configurator
Configure API gateways for SDK traffic management
remote-config
Remote configuration skill for feature flags.
probuilder
Unity ProBuilder skill for level prototyping.
lms-configuration-administration
Configure learning management system settings, user roles, course templates, gradebooks, and third-party integrations
protocol-builder
Skill for building standardized research protocols
interactive-dashboard-builder
Skill for building interactive data dashboards
qiskit-circuit-builder
IBM Qiskit integration skill for quantum circuit construction, transpilation, and execution on IBM Quantum hardware
qec-code-builder
Quantum error correction code implementation skill for fault-tolerant quantum computing