開発 / デスクトップアプリ基盤
🖥️ Electron以外のデスクトップアプリ開発フレームワーク総まとめ
ElectronはChromium(ブラウザ)を丸ごと同梱するため、最小でも数十〜100MB超と重い。そこで「ブラウザを丸ごと積まない軽量な代替」を、軽さ(バイナリ/メモリ)・使いやすさ・導入率(採用事例)・人気(GitHub star)で総まとめした。 大きく2系統——軽量WebView系(OS標準WebViewを使い、SvelteKit/React等のWeb資産をそのまま活かせるTauri・Wails・Neutralinojs・Photino・Sciter)と、完全ネイティブ系(Webですらない独自描画/ネイティブ部品のFlutter・Qt・.NET MAUI・Avalonia・Compose Multiplatform・Slint・egui・GTK)——をマスター比較表+個別カードで整理する。数値はGitHub等の一次情報で2026年時点の概数(要確認)。※ハードウェアのNPUとは無関係の、アプリ開発基盤の話です。
🖥️ 結論・全体像 — Electronはなぜ重く、何で置き換えるか
このセクションの3点
① Electronは Chromium(ブラウザエンジン)を丸ごと同梱するため、最小でも80〜150MBになる
② 代替は「軽量WebView系(OS標準WebView利用・Web資産そのまま)」と「完全ネイティブ系(独自描画)」の2系統
③ SvelteKit使いの本命はTauri(最小600KB〜・GitHub star 約108k・v2でモバイルにも対応)
80〜150MB
Electron 最小バイナリ
(約・2026時点・要確認)
600KB〜
Tauri 最小バイナリ
(約・2026時点・要確認)
177k
Flutter GitHub star
(約・2026時点・要確認)
108k
Tauri GitHub star
(約・2026時点・要確認)
出典: github.com/tauri-apps/tauri / github.com/flutter/flutter / github.com/electron/electron
なぜ Electron は重いのか
ElectronはGoogle Chromeと同じChromiumレンダリングエンジンをアプリごとに丸ごと同梱する。 これによりWebの資産(HTML/CSS/JS)をそのまま動かせる反面、どんな小さなアプリでも 80〜150MBのバイナリになり、起動時メモリ消費も150MB以上になる。 VS Code・Slack・Discordなど多くの有名ツールが採用しているのはElectronが先行者であり Web資産をそのまま転用できる利便性が大きいためで、「重くて良い」からではない。
代替の2系統
系統①
軽量WebView系
ChromiumをOSに任せる。WindowsはWebView2、macOSはWKWebView、LinuxはWebKitGTKを使い Chromiumを同梱しない。SvelteKit/React/VueなどのWeb資産がそのまま動く。
代表: Tauri / Wails / Neutralinojs / Photino / Sciter
系統②
完全ネイティブ系
WebViewもChromiumも使わない。独自の描画エンジン(Skia/Impeller/OpenGL等)や OSネイティブ部品でUIを描く。Web資産は使えないが軽量・高速になりやすい。
代表: Flutter / Qt / Avalonia / .NET MAUI / Compose MP / Slint / egui / GTK
用途別おすすめ早見
| 用途 | おすすめ | 理由 |
|---|---|---|
| Web資産(SvelteKit/React等)そのまま × 軽量 | Tauri | Rust製・最小600KB〜・v2でモバイルも対応・star約108k |
| モバイル〜デスクトップ一元化(Dart習得可) | Flutter | star最大177k・Google/Toyota車載採用・Dart要 |
| 枯れた安定・C++・商用組込 | Qt | 20年超の実績・VirtualBox/KDE採用・C++習得要 |
| .NETでLinuxも含む全OS | Avalonia | JetBrains採用・.NETでLinuxOK・.NET MAUIはLinux非対応 |
| Rustで最軽量・組込HMIも | Slint / egui | Slintは組込300KB RAM〜・EV充電HMI本番採用。eguiはツール系に強い |
このページの読み方
- 比較の軸で評価基準と方式の3分類を理解する
- マスター比較表で全13フレームワークを一覧で確認する
- 軽量WebView系・完全ネイティブ系の詳細カードで自分の用途に近いものを深掘りする
- 用途別おすすめでどれを選ぶか最終判断する
→ 次のSection(axes)では比較に使う評価軸と、方式の3分類を解説する。
📐 比較の軸
このセクションの3点
① 評価軸は「軽さ・使いやすさ・人気・導入率・方式」の5軸。全て数値・事実ベースで確認する
② 方式は3種類(Chromium丸ごと同梱 / OS標準WebView / 独自描画・ネイティブ)があり、バイナリサイズはほぼ方式で決まる
③ Web資産(SvelteKit/React等)を活かしたいなら②、最軽量や独自UIが必要なら③を選ぶ
評価軸の説明
| 軸 | 見るポイント | 補足 |
|---|---|---|
| 軽さ | 最小バイナリサイズ・起動時メモリ消費 | ほぼ「方式」で決まる。Chromium同梱が最重。約・要確認 |
| 使いやすさ | 主要言語・学習コスト・既存スキルの転用可否 | Web開発者ならJS/TS系が最短。Dart・Rust・C++は習得要 |
| 人気 | GitHubスター数(約・2026時点・要確認) | エコシステムの大きさ・プラグイン・情報量の目安 |
| 導入率・成熟度 | 実際の採用事例・歴史の長さ | Qt(20年超)、Flutter(Google/Toyota採用)など実績が信頼の根拠 |
| 方式 | Chromium同梱 / OS標準WebView / 独自描画の3分類 | 軽さとWeb資産の活用可否を根本から決める最重要軸 |
方式の3分類
| 方式 | 代表 | メリット | デメリット | 最小サイズ目安 |
|---|---|---|---|---|
| ① Chromium 丸ごと同梱 | Electron | 何でもWebで動く・Node.js統合・情報最多 | 80〜150MB・メモリ150MB以上・起動遅め | 80〜150MB(約・要確認) |
| ② OS標準 WebView利用 | Tauri / Wails / Neutralinojs / Photino | Chromiumを積まず軽い・Web資産(SvelteKit等)そのまま使える | OSごとにWebViewの実装差がある(Win=WebView2、Mac=WKWebView、Linux=WebKitGTK) | 600KB〜15MB(約・要確認) |
| ③ 独自描画 / ネイティブ部品 | Flutter / Qt / Avalonia / Slint / egui / GTK | 高速・軽量・OS依存が少ない・組込にも対応可 | Web資産は使えない・独自言語/UIフレームワークの習得が必要 | 300KB〜50MB(FW・構成による。約・要確認) |
方式の選び方 — 2行まとめ
軽さは方式で決まる。「Chromium同梱 > OS標準WebView > 独自描画」の順に一般的に軽くなる。
Web資産(SvelteKit/React等)を活かしたいなら②(Tauri/Wails等)、 最軽量や高速な独自UIが必要なら③(Flutter/Slint/egui等)を選ぶ。
→ 次のSection(master)では全13フレームワークを1つの大きな表で比較し、3つのランキングを示す。
📊 マスター比較表 — 全13フレームワーク
このセクションの3点
① Electron(基準)を含む全13フレームワークを1枚の表で横断比較できる(言語・方式・サイズ・star・OS・ライセンス)
② 軽さ/人気(star)/導入率の3軸ランキングで「どのFWがどの観点で強いか」を即確認できる
③ Tauriは軽さ4位×人気3位の総合バランス最良。FlutterはStar数最大でモバイル〜デスクトップ一元化に強い
全フレームワーク比較表
※ star数・バイナリサイズは約・2026年時点・要確認。出典: 各GitHub・公式サイト参照。
| フレームワーク | 言語・フロント | 方式 | 最小サイズ・メモリ | star(約) | 学習 | 代表採用 | 対応OS | ライセンス |
|---|---|---|---|---|---|---|---|---|
| 基準 | ||||||||
| Electron | JS/TS + HTML/CSS (Node + Chromium内蔵) | Chromium丸ごと同梱 | 80〜150MB / 150MB+ | 118k | 低 | VS Code, Slack, Discord, Notion | Win / Mac / Linux | MIT |
| 軽量WebView系(OS標準WebView使用 — Chromiumを積まない。Web資産そのまま活用可) | ||||||||
| Tauri | Rust + 任意Web (Svelte/React/Vue/Next) | OS標準WebView + Rust | 600KB〜数MB / 〜30MB | 108k | 中 (Rust基礎) | Cap, Aptakube, Screenpipe | Win/Mac/Linux/iOS/Android(v2) | Apache-2.0/MIT |
| Wails | Go + 任意Web | OS標準WebView (WebView2/WebKit) | 約10〜15MB | 34.8k | 中 (Go + Web) | Solo, Klustr | Win / Mac / Linux | MIT |
| Neutralinojs | JS/HTML/CSS (軽量C++プロセス) | OS標準WebView + 軽量ネイティブ | 約2〜5MB | 8.5k | 低〜中 | 小規模ツール多数 | Win / Mac / Linux / Web | MIT |
| Photino | C#/C++/Java + Web (Blazor/React等) | OS標準WebView | 数MB〜 (Electronの約1/110) | 1.3k | 低〜中 | 公式情報少 | Win / Mac / Linux | Apache-2.0 |
| Sciter | C++/Rust/Python + 独自HTML/CSS/TIScript | 独自軽量HTMLエンジン (非Chromium・GPU) | 4〜8MB (dll単体) | 0.4〜0.9k | 急 (独自言語) | 組み込みUI・メーカー系 (非公開多) | Win / Mac / Linux | 商用有償 |
| 完全ネイティブ系(独自描画 or OSネイティブ部品 — Webすら使わない) | ||||||||
| Flutter | Dart (独自Widget) | Skia/Impeller独自描画 | 15〜40MB | 177k (最大) | 中 (Dart) | Google NotebookLM, Rive, Toyota車載 | Win/Mac/Linux/Android/iOS/Web | BSD-3 |
| Qt | C++ (QML/QtQuickも可) | ネイティブ部品 or 独自GL/Vulkan | 動的リンクなら小 / Qt全体は大 | 11k (qtbase, 分散) | 急 (C++) | VirtualBox, KDE, Maya, 組込多数 | Win/Mac/Linux/組込/Android/iOS | LGPL/GPL/商用 |
| .NET MAUI | C# (XAML/コード) | OSネイティブ部品 | 約18MB〜 (.NET込) | 23.3k | 中 (C#/.NET) | MS系, 企業業務ツール | Win/Mac/Android/iOS (Linux非対応) | MIT |
| Avalonia | C# (XAML · WPF後継) | Skia独自描画 (全OS pixel一致) | 約20〜50MB | 31k | 中 (C#/XAML) | JetBrains dotMemory/dotTrace, Unity | Win/Mac/Linux/Android/iOS/WASM | MIT |
| Compose MP | Kotlin (Jetpack Compose) | Skia/GPU独自描画 | 50MB+ (JVM) | 19.1k | 中 (Kotlin/Compose) | JetBrains内部, Fleet一部 | Win/Mac/Linux/Android/iOS/Web(Beta) | Apache-2.0 |
| Slint | Rust/C++/Python/JS + 独自.slint DSL | OpenGL ES/Skia/ソフト描画(選択) | 組込300KB RAM / デスクトップ数MB | 22.9k | 中 (.slint DSL) | SK Signet (EV充電HMI), LibrePCB, WesAudio | Win/Mac/Linux/組込(Cortex-M)/WASM | GPL/商用/非商用無償 |
| egui | Rust (UIも全部Rust · 即時モード) | 独自即時モード (OpenGL/wgpu) | 数MB以下 | 29.4k | 中〜高 (即時モード) | Rerun Viewer, ゲームUI | Win/Mac/Linux/Web/Android | Apache-2.0/MIT |
| GTK (gtk-rs/PyGObject) | Rust/Python/C + Glade/Blueprint | GTKネイティブ部品 | Linux共有lib (極小) / Win別途 | 1.8k (gtk4-rs) | 急 | GIMP, Inkscape, GNOME | Linux最適 (Win/Mac相性悪) | LGPL2.1 |
3軸ランキング
① 軽さ順(バイナリサイズ・約)
| 順位 | FW | 目安サイズ |
|---|---|---|
| 1 | Slint | 300KB〜 (組込) |
| 2 | egui | 数MB以下 |
| 3 | Neutralinojs | 2〜5MB |
| 4 | Tauri | 600KB〜数MB |
| 5 | Sciter | 4〜8MB |
| 6 | Wails | 10〜15MB |
| 7 | Photino | 数MB〜 |
| 8 | Qt | 動的リンクなら小 |
| 9 | Flutter | 15〜40MB |
| 10 | .NET MAUI | 18MB〜 |
| 11 | Avalonia | 20〜50MB |
| 12 | Compose MP | 50MB+ (JVM) |
| 基準 | Electron | 80〜150MB |
② 人気順(GitHub star · 約)
| 順位 | FW | star |
|---|---|---|
| 1 | Flutter | 177k |
| 2 | Electron (基準) | 118k |
| 3 | Tauri | 108k |
| 4 | Wails | 34.8k |
| 5 | Avalonia | 31k |
| 6 | egui | 29.4k |
| 7 | .NET MAUI | 23.3k |
| 8 | Slint | 22.9k |
| 9 | Compose MP | 19.1k |
| 10 | Qt (qtbase) | 11k (分散) |
| 11 | Neutralinojs | 8.5k |
| 12 | Photino | 1.3k |
③ 導入率・成熟度順
| 順位 | FW | 根拠 |
|---|---|---|
| 1 | Qt | 20年超・VirtualBox/KDE/Maya |
| 2 | Flutter | Google・Toyota車載・NotebookLM |
| 3 | Electron (基準) | VS Code/Slack/Discord |
| 4 | Tauri | 急成長・次世代標準化 |
| 5 | Avalonia | JetBrains/GitHub採用 |
| 6 | Wails | GoエコシステムでTauri代替 |
| 7 | .NET MAUI | 企業業務ツール中心 |
| 8 | egui | Rerun Viewer/ゲームUI |
| 9 | Slint | EV充電HMI本番採用 |
| 10 | Neutralinojs | 小規模ツール中心 |
| 11 | Compose MP | JetBrains内部・Fleet一部 |
| 12 | Photino | 成熟度低め・情報少 |
表から読み解く4つのポイント
Tauri 軽さ4位(600KB〜)× 人気3位(108k star)× 成熟度4位の総合バランス最良。Web資産(SvelteKit/React)がそのまま使え、Electron後継として急速に標準化しつつある。
Flutter star数177kで全FW中最大。独自描画エンジン(Skia/Impeller)でモバイル〜デスクトップを1コードで賄えるが、Dart習得が必要。
Qt 導入率・成熟度1位。20年超の実績でVirtualBox・KDE・組込機器と幅広いが、C++と商用ライセンス費用が参入障壁。
Slint / egui 軽さ1・2位で組込〜デスクトップをRustで完結。.NET MAUIはLinuxデスクトップ非対応のため、C#でLinuxも対象にするならAvaloniaを選ぶべき点に注意。
出典(star数・サイズは約・2026年時点・各リポジトリで要確認)
Tauri: github.com/tauri-apps/tauri / tauri.app
Wails: github.com/wailsapp/wails / wails.io
Neutralinojs: github.com/neutralinojs/neutralinojs
Photino: github.com/tryphotino/photino.Native / tryphotino.io
Sciter: sciter.com
Flutter: github.com/flutter/flutter / flutter.dev
Qt: github.com/qt/qtbase / qt.io
.NET MAUI: github.com/dotnet/maui
Avalonia: github.com/AvaloniaUI/Avalonia / avaloniaui.net
Compose MP: github.com/JetBrains/compose-multiplatform
Slint: github.com/slint-ui/slint / slint.dev
egui: github.com/emilk/egui
GTK (gtk4-rs): github.com/gtk-rs/gtk4-rs
→ 各フレームワークの詳細(特徴・セットアップ・向き不向き)は次のセクション以降で系統別に解説する。
🪶 軽量WebView系 — Chromiumを積まずWeb資産を活かす
このセクションの3点
① OS標準WebView(Windows: WebView2 / macOS・Linux: WebKit)を使うのでChromiumを同梱せず軽い
② SvelteKit / React / Vue 等のWeb資産をそのままフロントに使えるため、Electronからの移行がしやすい
③ 本命はTauri(Rust・600KB〜・star約108k)。SvelteKit との相性が特に良くElectron後継筆頭
| 項目 | 内容 | 補足 |
|---|---|---|
| 言語 | Rust + 任意Web(Svelte / React / Vue / Next 等) | バックエンドがRust、フロントは自由 |
| 方式 | OS標準WebView + Rustバックエンド | Chromium同梱なし |
| 軽さ | 600KB〜数MB(約・2026時点・要確認) | Electronの1/50〜1/20程度 |
| GitHub star | 約108k(約・2026時点・要確認) | github.com/tauri-apps/tauri |
| 学習コスト | 中(Rustの基礎が必要) | フロントはWeb知識でOK |
| 代表採用 | Cap, Aptakube, Screenpipe | 急成長中 |
| 対応OS | Win / Mac / Linux / iOS / Android(v2〜) | モバイルはv2以降 |
| ライセンス | Apache-2.0 / MIT | 商用利用可 |
| 一言 | SvelteKitと相性◎。Web資産を活かして超軽量アプリ。Electron後継筆頭。tauri.app | |
| 項目 | 内容 | 補足 |
|---|---|---|
| 言語 | Go + 任意Web(React / Vue / Svelte 等) | TauriのGo版と言われる |
| 方式 | OS標準WebView(WebView2 / WebKit) | Chromium同梱なし |
| 軽さ | 約10〜15MB(約・2026時点・要確認) | Tauriより大きめ |
| GitHub star | 約34.8k(約・2026時点・要確認) | github.com/wailsapp/wails |
| 学習コスト | 中(Go + Web知識) | |
| 代表採用 | Solo, Klustr 等 | Goバックエンド主体プロジェクト向け |
| 対応OS | Win / Mac / Linux | |
| ライセンス | MIT | 商用利用可 |
| 一言 | GoエンジニアがWebフロントを組み合わせたい場合に向く。wails.io | |
| 項目 | 内容 | 補足 |
|---|---|---|
| 言語 | JS / HTML / CSS(軽量C++プロセス) | Nodeランタイム不要 |
| 方式 | OS標準WebView + 軽量ネイティブプロセス | 依存ゼロが売り |
| 軽さ | 約2〜5MB(約・2026時点・要確認) | WebView系で最軽量クラス |
| GitHub star | 約8.5k(約・2026時点・要確認) | github.com/neutralinojs/neutralinojs |
| 学習コスト | 低〜中 | JS/Web知識があれば入りやすい |
| 代表採用 | 小規模ツール多数 | 大規模採用は少ない |
| 対応OS | Win / Mac / Linux / Web | |
| ライセンス | MIT | |
| 一言 | 極軽量でシンプル。機能面・コミュニティは小規模で成熟度は限定的。neutralino.js.org | |
| 項目 | 内容 | 補足 |
|---|---|---|
| 言語 | C# / C++ / Java + Web(Blazor / React 等) | .NETと親和性あり |
| 方式 | OS標準WebView | Chromium同梱なし |
| 軽さ | 数MB〜(Electronの約1/110との公式情報・要確認) | 約・2026時点・要確認 |
| GitHub star | 約1.3k(約・2026時点・要確認) | github.com/tryphotino/photino.NET |
| 学習コスト | 低〜中 | .NET知識があれば入りやすい |
| 代表採用 | 公式情報が少ない | 成熟度は発展途上 |
| 対応OS | Win / Mac / Linux | |
| ライセンス | Apache-2.0 | |
| 一言 | .NET × Webで軽量を狙えるが成熟度は低め。採用情報も少ない。tryphotino.io | |
| 項目 | 内容 | 補足 |
|---|---|---|
| 言語 | C++ / Rust / Python 等 + 独自HTML/CSS/TIScript | TIScriptは独自のスクリプト言語 |
| 方式 | 独自軽量HTMLエンジン(非Chromium・GPU描画) | OS標準WebViewとは異なる |
| 軽さ | 4〜8MB(dll単体・約・2026時点・要確認) | 最軽量クラスだがエンジン独自 |
| GitHub star | 周辺ライブラリ0.4〜0.9k(約・2026時点・要確認) | sciter.com |
| 学習コスト | 急(独自言語・独自仕様の習得が必要) | 標準Webとの互換は限定的 |
| 代表採用 | 組み込みUI・メーカー系(非公開多数) | 産業系で採用される傾向 |
| 対応OS | Win / Mac / Linux | |
| ライセンス | 商用有償(要ライセンス購入) | OSSプロジェクトは個別確認が必要 |
| 一言 | 軽量DLL一枚が魅力だが独自エンジン・独自言語・商用費がハードル。OSS新規採用には向かない。 | |
⚠ OS間のWebView実装差に注意
軽量WebView系は全OS共通ではなく、Windowsは WebView2(Chromiumベース)、macOS/Linuxは WebKit が使われる。CSSの描画・JavaScript挙動・フォントレンダリングがOS間で微妙に異なるため、複数OSでの動作確認が必要。特にLinux環境ではWebKitのバージョン差が出やすい点に注意。
→ 次のSection「完全ネイティブ系」では、Webを使わず独自描画エンジンやOSネイティブ部品でUIを構築するアプローチを解説する。
🧩 完全ネイティブ系 — Webですらない独自描画/ネイティブ
このセクションの3点
① WebViewすら使わず独自描画(Skia等)またはOSネイティブ部品で動作するため、ブラウザエンジンに依存しない高速・軽量な実行が可能
② star数最大はFlutter(約177k・2026時点・要確認)、実装実績・成熟度で最古参はQt(20年超・VirtualBox/KDE/Maya採用)
③ UIはDart Widget/QML/XAML/.slint/RustコードなどWeb技術以外の独自記述が必要で、WebView系と比べて学習コストが高い
Flutter
⭐ 約177k(2026時点・要確認) star数最多| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | Dart(独自Widgetツリー) | Dart習得が必須 |
| 描画方式 | Skia / Impeller 独自描画 | OSのUI部品を使わず全ピクセル自前 |
| 最小バイナリサイズ | 約15〜40MB(2026時点・要確認) | Electronより軽いが大きめ |
| 学習コスト | 中(Dart+Widgetパターン) | 公式ドキュメントが充実 |
| 代表採用 | Google NotebookLM、Rive、Toyota車載HMI | Google製・産業利用まで実績あり |
| 対応OS | Win / Mac / Linux / Android / iOS / Web | 1コードで全プラットフォーム対応 |
| ライセンス | BSD-3-Clause | 商用利用無償 |
一言: star数・採用実績ともに最大級。1つのコードベースでモバイル〜デスクトップを網羅できるのが最大の強み。Toyota車載HMIへの採用など産業用途への広がりも見られる。Dart習得が初期ハードルだが、公式ドキュメントと学習コミュニティが充実しており独自描画エンジンによるUI一貫性はOS間でピクセルレベルで揃う。
Qt
⭐ 約11k (qtbase・2026時点・要確認) 20年超の最成熟| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | C++(QML / QtQuick も選択可) | C++が主力、QMLでUIを宣言的に書ける |
| 描画方式 | OSネイティブ部品 または 独自GL/Vulkan | 組込〜デスクトップ両対応 |
| 最小バイナリサイズ | 動的リンク時は小さい / Qt全体は大 | 静的リンクで増大、構成次第 |
| 学習コスト | 急(C++ + Qtシグナル/スロット) | C++未経験者には敷居が高い |
| 代表採用 | VirtualBox、KDE、Autodesk Maya、組込多数 | 産業・CAD・組込での実績が特に豊富 |
| 対応OS | Win / Mac / Linux / 組込 / Android / iOS | 組込BSP対応が強み |
| ライセンス | LGPL / GPL / 商用ライセンス | 商用利用は有償ライセンス要確認 |
一言: 20年以上の実績を持つ最古参フレームワーク。VirtualBoxやKDE、Autodesk Mayaなど重量級ツールへの採用で産業用途での信頼は高い。C++の習得と商用利用時のライセンス費用が主な障壁。新規個人プロジェクトよりも、既存C++資産・組込・業務システムで選ばれるケースが多い。
出典: github.com/qt/qtbase / qt.io
.NET MAUI
⭐ 約23.3k(2026時点・要確認) Linux非対応| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | C#(XAML / コードビハインド) | .NETエコシステムとの統合が強み |
| 描画方式 | OSネイティブ部品(プラットフォーム標準) | 各OSのUIスタイルに自動準拠 |
| 最小バイナリサイズ | 約18MB〜(.NET込、2026時点・要確認) | .NETランタイム同梱で増大しがち |
| 学習コスト | 中(C# / .NET経験者は低め) | 既存.NETスキルを活かしやすい |
| 代表採用 | MS系社内ツール、企業業務アプリ | Xamarin.Forms後継として移行案件多数 |
| 対応OS | Win / Mac / Android / iOS(Linux非対応) | Linuxデスクトップ非対応は要注意 |
| ライセンス | MIT | 商用利用無償 |
一言: .NETスタックの中では最速でモバイル(Android/iOS)+Windowsをカバーできる。しかしLinuxデスクトップに非対応という制約が最大の注意点。Linuxが要件に入るなら後述のAvaloniaを選ぶべき。既存Xamarin.Formsプロジェクトの後継移行先としても位置づけられている。
出典: github.com/dotnet/maui / learn.microsoft.com/dotnet/maui
Avalonia
⭐ 約31k(2026時点・要確認) JetBrains採用 / WPF後継| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | C#(XAML・WPF互換スタイル) | WPF/UWP経験者がスムーズに移行できる |
| 描画方式 | Skia独自描画(全OS pixel一致) | OS間でUIが完全一致する強み |
| 最小バイナリサイズ | 約20〜50MB(2026時点・要確認) | .NETランタイム込み |
| 学習コスト | 中(C# / XAML) | WPF経験者なら低め |
| 代表採用 | JetBrains dotMemory / dotTrace、Git Credential Manager、Unity | JetBrainsの本番採用が信頼の裏付け |
| 対応OS | Win / Mac / Linux / Android / iOS / WASM | Linuxを含む全OS対応が.NET系最強 |
| ライセンス | MIT | 商用利用無償 |
一言: .NETでLinuxを含む全OSをカバーしたい場合の本命。WPFの後継として設計されており、XAML資産が流用できる。JetBrainsのdotMemory/dotTraceという本番デベロッパーツールへの採用が、実用品質の証明になっている。MAUIと違いLinuxデスクトップでも動作するため、クロスプラットフォーム要件があるC#プロジェクトではAvaloniaが有力候補になる。
Compose Multiplatform
⭐ 約19.1k(2026時点・要確認) JVM重い| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | Kotlin(Jetpack Compose UI) | Android開発者には馴染みのある構文 |
| 描画方式 | Skia / GPU独自描画 | Androidと同じCompose UIを全OS展開 |
| 最小バイナリサイズ | 50MB+(JVM込、2026時点・要確認) | JVMランタイムが重くElectronに近い |
| 学習コスト | 中(Kotlin / Compose) | Android開発者は最短でデスクトップ展開可 |
| 代表採用 | JetBrains内部ツール、Fleet(一部) | JetBrains製でメンテ継続性は高め |
| 対応OS | Win / Mac / Linux / Android / iOS / Web(Beta) | Web・iOS対応はまだBeta段階 |
| ライセンス | Apache-2.0 | 商用利用無償 |
一言: KotlinのAndroid開発者がデスクトップへ最短で展開したい場合の選択肢。Jetpack Composeと同じ書き方でデスクトップアプリが作れる。ただしJVMランタイム込みで50MB以上と重く、軽量化が要件の場合は不向き。Web/iOSはまだBeta段階であることも考慮が必要。
出典: github.com/JetBrains/compose-multiplatform / jetbrains.com/lp/compose-multiplatform
Slint
⭐ 約22.9k(2026時点・要確認) 組込300KB RAM / EV充電HMI本番| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | Rust / C++ / Python / JS + 独自 .slint DSL | UIは .slint ファイルに宣言的に記述 |
| 描画方式 | OpenGL ES / Skia / ソフトウェア描画(選択可) | ハードウェア非依存でCortex-M対応 |
| 最小バイナリサイズ | 組込 300KB RAM / デスクトップ数MB(2026時点・要確認) | 軽さ順1位(仕様データより) |
| 学習コスト | 中(.slint DSLの習得が必要) | Rust本体とは別にDSLを学ぶ必要あり |
| 代表採用 | SK Signet(EV充電HMI本番)、LibrePCB、WesAudio | EV充電器HMIへの実採用が特筆 |
| 対応OS | Win / Mac / Linux / 組込(Cortex-M)/ WASM | マイコンレベルの組込から対応 |
| ライセンス | GPL / 商用ライセンス / 非商用無償 | 商用は有償ライセンスが必要 |
一言: 軽さ順1位。300KB RAMで動く組込HMIから通常のデスクトップアプリまで対応するRust製フレームワーク。SK SignetのEV充電器HMIへの本番採用は産業用途での実用性を示す。商用利用は有償ライセンスが必要な点と、独自.slint DSLの学習コストが選定時のポイントになる。
egui
⭐ 約29.4k(2026時点・要確認) Rust完結・即時モード最軽量| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | Rust(UIも全部Rust・即時モード) | マークアップ不要・コードだけでUI構築 |
| 描画方式 | 独自即時モード(OpenGL / wgpu) | 毎フレーム全UI再構築する即時モード |
| 最小バイナリサイズ | 数MB以下(2026時点・要確認) | Rustの静的リンクで単一バイナリ |
| 学習コスト | 中〜高(Rust + 即時モードの概念) | 保持モードUIに慣れた人は概念の転換が要る |
| 代表採用 | Rerun Viewer(データ可視化)、ゲームUI・内部ツール | デバッグ/可視化ツール系での採用が多い |
| 対応OS | Win / Mac / Linux / Web / Android | WebAssemblyでブラウザ上でも動作 |
| ライセンス | Apache-2.0 / MIT(デュアル) | 商用利用無償 |
一言: Rust完結で最も軽量な即時モードGUIライブラリ。毎フレームUIを再構築する即時モード(Immediate Mode)の設計により、状態管理が単純になりデバッグしやすい。Rerun Viewerのような高性能データ可視化ツールに採用されている。一方で細かいUIカスタマイズや複雑なアニメーションは不得意で、デザイン重視のアプリには向かない。
出典: github.com/emilk/egui / egui.rs
GTK(gtk-rs / PyGObject)
⭐ 約1.8k gtk4-rs(2026時点・要確認) Linux専用・GIMP/Inkscape| 項目 | 内容 | 備考 |
|---|---|---|
| 言語 / フロント | Rust / Python / C + Glade / Blueprint | gtk-rs(Rust)/ PyGObject(Python)が主流バインディング |
| 描画方式 | GTKネイティブ部品(Linux OSスタイル準拠) | GNOMEと完全統合したネイティブ外観 |
| 最小バイナリサイズ | Linux共有ライブラリ利用で極小(2026時点・要確認) | Linuxには標準搭載のため追加サイズ微小 |
| 学習コスト | 急(GTK概念 + 言語バインディング) | Win/Macでの挙動が不安定になりやすい |
| 代表採用 | GIMP、Inkscape、GNOME各種アプリ | Linuxデスクトップの代表的OSSツールに採用 |
| 対応OS | Linux最適(Win / Mac は相性が悪い) | Win/Macへの移植は困難・非推奨 |
| ライセンス | LGPL 2.1 | LGPLに基づく利用が基本 |
一言: GIMPやInkscapeなどLinuxを代表するOSSアプリの基盤。Linuxデスクトップ専用と割り切るなら共有ライブラリ活用でバイナリサイズを極小化できる。Win/Macとのクロスプラットフォーム対応は困難で相性が悪く、Linux専用ツールに特化した選択肢として位置づけられる。
ネイティブ系 選択の早見
| 条件 | 選択肢 | ポイント |
|---|---|---|
| .NETでLinuxも必要 | Avalonia | MAUIはLinux非対応。JetBrains採用実績あり |
| .NETでLinux不要(Win/Mac/モバイル) | .NET MAUI | Xamarinの後継。モバイル込みで楽 |
| Rustで最軽量・デスクトップツール | egui | 即時モード・数MB・Rust完結 |
| Rustで組込HMI・産業用 | Slint | 300KB RAM・EV充電HMI本番実績あり(商用は有償) |
| モバイル〜デスクトップ一元化・採用実績重視 | Flutter | star最多・Toyota車載採用。Dart習得要 |
| Linux専用・OSSツール | GTK | GIMP/Inkscapeと同じ基盤。Win/Mac移植は難しい |
→ .NETで書くならLinux要否でAvalonia(全OS)とMAUI(Linux除く)を選び分ける。Rustで最軽量を目指すなら汎用ツールはegui、組込/HMIはSlint。
🎯 用途別おすすめ&まとめ
このセクションの3点
① 「何をやりたいか」でフレームワークは変わる。技術スタック・対応OS・軽さの優先度を先に決める
② Web資産(Svelte / React)を活かして軽くするなら Tauri が本命。このサイト自体SvelteKit製なのでTauriと組み合わせやすい
③ star・サイズは2026時点の概数。最終判断は公式リポジトリと最新リリースノートを確認すること
用途別の選び方
| やりたいこと | おすすめ | 理由 |
|---|---|---|
| Web資産(Svelte/React)を活かして軽いデスクトップアプリ | Tauri | OS標準WebView + Rustで600KB〜。SvelteKit相性◎。Electron後継筆頭 |
| GoエンジニアがWebフロントと組み合わせたい | Wails | GoバックエンドにWebフロントを組み合わせる構成。TauriのGo版 |
| C# / .NETでLinuxも含む全OS対応 | Avalonia | Skia独自描画でWin/Mac/Linux全OS pixel一致。JetBrains採用実績あり |
| C# / .NETでLinux不要・モバイルも一元化したい | .NET MAUI | Win/Mac/iOS/Android対応。Linuxデスクトップ非対応に注意 |
| Rustで最軽量・組み込みHMIも視野 | Slint | 組込300KB RAM〜。EV充電器HMIで本番採用実績。Rust/C++/Python対応 |
| Rustでツール系UI・ゲームUIを完結させたい | egui | 即時モードUI。Rust完結で数MB以下。Rerun Viewerで採用 |
| モバイル〜デスクトップを1コードで一元化(Dart可) | Flutter | star177k(最大)。Google NotebookLM / Toyota車載で採用。Dart習得が必要 |
| AndroidエンジニアがKotlinでデスクトップ展開したい | Compose Multiplatform | Jetpack ComposeをそのままデスクトップへKotlinで展開。JVMの重さは課題 |
| 枯れた安定・C++・商用OK・組込も含む | Qt | 20年超の最成熟。VirtualBox / KDE / Maya で採用。C++と商用費が障壁 |
| 極小バイナリ・JS/HTML・外部依存ゼロ | Neutralinojs | 2〜5MB。Node不要。小規模ツール向け。大規模・長期プロジェクトには注意 |
結論
Web資産(Svelte/React)を活かして軽くするなら Tauri が本命。 モバイルも一元化するなら Flutter、枯れた安定を求めるなら Qt、.NETでLinuxも含むなら Avalonia、Rustで最軽量(組込含む)なら Slint / egui が各用途に合う。
なお、このサイト自体が SvelteKit で構築されている。デスクトップアプリ化を検討するなら、SvelteKitのビルド出力をそのままフロントに使える Tauri(SvelteKit × Tauri) が最も自然な選択肢になる。
star数・バイナリサイズはいずれも約・2026時点の概数で、プロジェクトの活発さにより変動する。ライセンス条件や商用利用の可否は各プロジェクトの公式リポジトリ・公式サイトで最新情報を確認すること。最終的な採用判断は公式ドキュメントと最新リリースノートを基準にすること。