Parent : [[INDEX-DEV-GENERAL]]
Electron
Source
- Site : https://www.electronjs.org/
- Repository : https://github.com/electron/electron
- Type : Framework desktop cross-platform basé sur Chromium + Node.js
Résumé
Electron permet de créer des applications desktop pour Windows, macOS et Linux en utilisant HTML, CSS et JavaScript. Il embarque Chromium pour le rendu et Node.js pour l'accès au système.
Caractéristiques clés
- Cross-platform : une codebase pour Windows, macOS, Linux.
- Powered by the web : réutilise les technos web existantes.
- APIs système : accès natif au filesystem, notifications, tray, shortcuts, etc.
- Auto-updater : mise à jour automatique intégrée.
- Installers : génération de packages natifs.
- Distribution : Mac App Store, Microsoft Store, etc.
- Ecosystème : Electron Forge, Electron Fiddle.
Inconvénients connus
- Taille des binaires : embarque Chromium + Node.js (plusieurs dizaines/centaines de MB).
- Consommation mémoire : plus élevée qu'une app native.
- Cold start : plus lent qu'une app native.
Quand utiliser
- Tu as une web app existante à transformer en desktop app rapidement.
- Tu as besoin d'APIs système avancées non disponibles via Tauri.
- L'équipe maîtrise le web et veut shipper vite sur desktop.
Alternatives
- Tauri : plus léger, plus sécurisé, Rust backend.
- Flutter Desktop : UI cohérente, codebase mobile+desktop.
- Native : SwiftUI (macOS), WPF/WinUI (Windows), GTK/Qt (Linux).
Références connexes
- [[KNOW-REF-037]] — Tauri
- [[KNOW-REF-036]] — Flutter
- [[KNOW-PAT-162]] — FolderDrop — Widgets Electron ancrés au bureau via WorkerW