Perry vs Electron
Electron embeds Chromium and Node.js and renders application UI as web content. Perry compiles supported TypeScript through LLVM and maps its UI model to platform widgets where supported. Electron is more mature and web-compatible; Perry targets a different UI and deployment model.
技術的な事実と測定上の注意事項は、翻訳間のずれを防ぐため英語を正本として管理しています。
Electron とは?
Electron's official documentation describes a desktop framework that embeds Chromium and Node.js. Its main process runs in Node.js and each BrowserWindow loads web content in a renderer process based on Chromium's multi-process architecture.
Perry とは?
Perry parses TypeScript and JavaScript with SWC and compiles supported code ahead of time through LLVM. Native builds do not require an external Node.js installation or JavaScript engine, but they do statically link the Perry runtime and garbage collector. Perry is pre-1.0, implements a practical language and Node.js subset, and offers an optional embedded V8 fallback for code that needs engine semantics.
並べて比較
| 機能 | Perry | Electron |
|---|---|---|
| UI rendering | Platform widgets where supported | HTML/CSS in Chromium renderer processes |
| Runtime | Perry runtime + GC; no JS engine by default | Chromium, V8, Node.js, and Electron APIs |
| Targets | Desktop plus mobile, wearable, TV, Web/WASM | Desktop: macOS, Windows, Linux |
| Web compatibility | Perry UI and supported APIs | Chromium web platform |
| Ecosystem maturity | Pre-1.0 | Established framework and tooling ecosystem |
Perry が優れている点
- +Native-widget UI model
- +No bundled browser engine in native builds
- +Targets beyond desktop
- +AOT machine code for supported code
Electron が優れている点
- +Mature ecosystem and documentation
- +Chromium-consistent web rendering
- +Broad Node.js and npm compatibility
- +Fast reuse of existing web applications and teams
Perry を選ぶべきとき
Choose Perry when real platform widgets and non-desktop targets matter and your application fits its current support surface.
Electron を選ぶべきとき
Choose Electron when web compatibility, ecosystem maturity, desktop focus, and reuse of an existing web frontend outweigh browser-engine distribution costs.
結論
Electron and Perry optimize for different constraints. Measure your real installer, memory, startup, accessibility, package compatibility, and UI requirements before choosing.