{"id":48823115,"url":"https://github.com/catharacta/electrobun-builder","last_synced_at":"2026-04-14T16:01:58.742Z","repository":{"id":346368456,"uuid":"1189431525","full_name":"Catharacta/electrobun-builder","owner":"Catharacta","description":"Professional packaging and signing toolkit for Electrobun apps on Windows. Supports NSIS, WiX, and MSIX with automatic branding and code signing. Runs on Bun and Node.js.","archived":false,"fork":false,"pushed_at":"2026-04-03T14:09:33.000Z","size":172,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-03T15:57:18.175Z","etag":null,"topics":["bun","electrobun","msi","msix","nsis","windows","wix"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Catharacta.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-23T10:10:01.000Z","updated_at":"2026-04-03T14:09:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Catharacta/electrobun-builder","commit_stats":null,"previous_names":["catharacta/electrobun-builder"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/Catharacta/electrobun-builder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Catharacta%2Felectrobun-builder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Catharacta%2Felectrobun-builder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Catharacta%2Felectrobun-builder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Catharacta%2Felectrobun-builder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Catharacta","download_url":"https://codeload.github.com/Catharacta/electrobun-builder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Catharacta%2Felectrobun-builder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31803790,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T11:13:53.975Z","status":"ssl_error","status_checked_at":"2026-04-14T11:13:53.299Z","response_time":153,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bun","electrobun","msi","msix","nsis","windows","wix"],"created_at":"2026-04-14T16:01:54.188Z","updated_at":"2026-04-14T16:01:58.737Z","avatar_url":"https://github.com/Catharacta.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# electrobun-builder-for-windows\n\n[![npm version](https://img.shields.io/npm/v/electrobun-builder-for-windows.svg)](https://www.npmjs.com/package/electrobun-builder-for-windows)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Build Status](https://github.com/Catharacta/electrobun-builder/actions/workflows/publish.yml/badge.svg)](https://github.com/Catharacta/electrobun-builder/actions)\n\nPackaging and signing tool for [Electrobun](https://electrobun.sh) applications on Windows. Support for NSIS, WiX (MSI), and MSIX formats.\n\n👉 [日本語のドキュメントはこちら (Japanese README)](README.ja.md)\n\n## Quick Start\n\n1.  **Install**: `npm install -g electrobun-builder-for-windows`\n2.  **Configure**: Create `electrobun.config.ts` in your project root.\n3.  **Build**: Run `electrobun-builder build --target nsis`\n\n## Features\n\n- **NSIS**: Create a single-file EXE installer with custom icons and professional MUI2 interface.\n- **WiX (MSI)**: Create professional MSI installers with stable upgrade codes using UUIDs and automatic component scanning.\n- **MSIX**: Create modern Windows app packages (Sparse Manifest) with automatic logo resizing via `sharp`.\n- **Code Signing**: Digitally sign installers and binaries using PFX certificates via `signtool`.\n- **Auto Update**: Generate `latest.json` metadata (including **SHA-256 hash**) for Electrobun's `Updater` class.\n- **Resource Editing**: Automatically update EXE icons and version info (Copyright, Company, etc.) using `rcedit`.\n\n## Installation\n\n```bash\nnpm install -g electrobun-builder-for-windows\n```\n\n## OS Dependencies\n\nThis tool requires several Windows SDK and packaging tools. Ensure these are installed and available in your `PATH`:\n\n| Target | Required Tool | Link |\n| --- | --- | --- |\n| **NSIS** | NSIS 3.x | [Download](https://nsis.sourceforge.io/Download) |\n| **WiX** | WiX Toolset v3.x | [Download](https://wixtoolset.org/releases/) |\n| **MSIX / Sign** | Windows SDK (SignTool, MakeAppx) | [Download](https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/) |\n\n## Usage\n\n### 1. Basic Build\nBuild an installer for a specific target.\n\n```bash\n# Build NSIS (.exe)\nelectrobun-builder build --target nsis\n\n# Build WiX (.msi)\nelectrobun-builder build --target wix\n\n# Build MSIX (.msix)\nelectrobun-builder build --target msix\n```\n\n### 2. Build and Sign\nApply a digital signature to the installer and the internal application binary. This works for all targets (**nsis**, **wix**, **msix**).\n\n```bash\n# Sign NSIS (.exe)\nelectrobun-builder build --target nsis --sign --pfx cert.pfx --password yourpassword\n\n# Sign WiX (.msi)\nelectrobun-builder build --target wix --sign --pfx cert.pfx --password yourpassword\n\n# Sign MSIX (.msix)\nelectrobun-builder build --target msix --sign --pfx cert.pfx --password yourpassword\n```\n\n### 3. Auto-Update Metadata\nGenerate `latest.json` required for Electrobun's `Updater`. This is also available for all targets.\n\n```bash\n# Generate for NSIS\nelectrobun-builder build --target nsis --update --baseUrl https://your-server.com/downloads\n\n# Generate for WiX\nelectrobun-builder build --target wix --update --baseUrl https://your-server.com/downloads\n\n# Generate for MSIX\nelectrobun-builder build --target msix --update --baseUrl https://your-server.com/downloads\n```\n\n### 4. Branding (Standalone)\nApply branding (icons and metadata) to already built binaries in the `build/` folder without recreating the full installer. This is useful for adjusting executable resources quickly.\n\n```bash\nelectrobun-builder brand\n```\n\n## Configuration\n\nThe builder reads `electrobun.config.ts` from your project root.\n\n```typescript\nimport { type ElectrobunConfig } from \"electrobun-builder-for-windows\";\n\nconst config: ElectrobunConfig = {\n  name: \"MyApp\",\n  version: \"1.0.0\",\n  author: \"Your Company\",\n  windows: {\n    icon: \"assets/app.ico\", // Path to your .ico file\n    productId: \"com.example.myapp\", // Used for WiX UpgradeCode and Registry\n    installDir: \"MyApp\", // Folder name in Program Files\n    languageCode: \"1033\", // Optional: WiX LCID (Default: 1033 - English)\n    languageName: \"English\", // Optional: NSIS Language (Default: English)\n    msix: {\n      publisher: \"CN=YourPublisher\",\n      publisherDisplayName: \"Your Name\",\n      identityName: \"com.example.myapp\",\n      capabilities: [\"internetClient\"]\n    }\n  }\n};\n\nexport default config;\n```\n\n## License\n\nMIT - Copyright (c) 2026 Catharacta\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcatharacta%2Felectrobun-builder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcatharacta%2Felectrobun-builder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcatharacta%2Felectrobun-builder/lists"}