Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達

今回は「Electronの代替を目指す軽量なRust製フレームワーク「Tauri」、リリース候補版に到達」についてご紹介します。

関連ワード (到達、登場予定、設計等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


WindowsやmacOS、Linuxなどのクロスプラットフォーム対応のデスクトップアプリ開発を容易にするフレームワークとして高い人気を持つフレームワークが「Electron」です。

ElectronはChromiumとNode.jsを用いることで、HTML/CSS/JavaScriptのWebテクノロジーによってデスクトップアプリケーションを開発できるのが最大の特徴です。

いまやElectronは、Visual Studio CodeやMicrosoft Teams、Slack、GitHub Desktop、そして最近話題のNotionなど、さまざまなアプリケーションに採用されています。

このElectronの優れた特徴を備えつつ、よりメモリ消費量が小さくファイルサイズもコンパクトで、高いセキュリティを備え、柔軟なライセンスを実現しようと開発されたのが「Tauri」です。

fig

Tauriは、時期未定ながらiOSとAndroidにも対応する計画があります。これが実現すれば、モバイルも含めたクロスプラットフォーム対応のフレームワークとなります。また、バックエンドにDenoをバインドできるようにする計画もあります。

Tauriはこれまでベータ版として開発が続けられてきましたが、開発チームは先月にリリース候補版への到達を発表しました。今年第1四半期中には正式版となる安定版が登場予定ですので、予定通りに開発が進めば、今月中にWindows、macOS、Linuxに対応した正式版がリリースされるでしょう。

Read all about the release of Tauri's 1.0.0-rc.0 https://t.co/GrGtvDiUdh

— Tauri (@TauriApps) February 10, 2022

TauriはElectronの代替を目指す軽量なフレームワーク

TauriはRust言語で開発されており、Electronと比較してファイルサイズもメモリ容量も小さい点が特徴であると開発チームが強調しています。

GitHubにはElectronとの比較表が示されています。それによるとLinux版のインストールサイズがElectronで52.1MBのところ、Tauriは10分の1以下のわずか3.1MB。同じくLinux版でのメモリ消費量はElectronが462MBのところ、Tauriは半分以下の180MBとなっています。

起動時間もElectronの0.80秒に対してTauriは0.39秒です。

これはTauriの開発チームによる比較なのでその分を割り引いて見るべきですが、それでもTauriが軽量であることは見て取れます。

Tauriがこのように軽量なのは、最初から効率よくリソースを使うように設計されてRustで実装されていることに加えて、Electronとは異なりChromiumを組み込んでいないことが大きな理由として挙げられるでしょう。

Electronはフロントエンドの基盤としてChromiumを組み込んでいますが、Tauriでは代わりにOSが備えているWebViewの機能を、抽象化レイヤのwry経由で呼び出すことで、クロスプラットフォームを実現しつつChromiumを不要にしています。

OSネイティブのWebView機能は、WindowsではWebView2、macOSではWebKit、Linuxではgtk-rsがそれに該当します。ただしすべてのプラットフォームでChromiumを使うElectronと比べると、プラットフォームごとに微妙にレンダリング結果が異なる、といったことが発生する可能性はありそうです(互換性についてはかなり改善されては来ましたが)。

フレームワーク内にChromiumを組み込まないことでセキュリティも向上すると、Tauri開発チームは説明しています。例えば、Chromiumに何らかの脆弱性が見つかった場合、Chromiumが組み込まれたフレームワークであれば、Chromiumで脆弱性が修正されたあとでフレームワークに対する修正を行い、その後にパッチを配布しなければなりません。

これは脆弱性の発見からパッチの配布までのステップ数が多く、時間がかかります。

一方、フレームワーク内にChromiumなどを組み込んでいなければフレームワーク側で対応する必要がなく、WebView側の脆弱性対応が済めばそれで終わりです。

Tauriの開発チームはこのように、自分たちがElectronの課題だと考えている部分の改善を反映させた設計と実装をTauriで実現しようとしています。

先日発表された「The State of JS 2021」では、まだTauriの人気はそれほどでもないようなのですが、正式版のリリースが近づいていることもあり、人気の高いElectronを代替し得る存在として、これから注目されるフレームワークになるのではないでしょうか。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
マイクロソフト、ビルド時にソフトウェアの部品表(SBOM)を自動生成する「SBOM Tool」、オープンソースで公開
Microsoft
2022-07-22 05:17
顧客エンゲージメントのノウハウを可視化しアクションを提案する営業支援SaaSのMagic Momentが6.6億円調達
ネットサービス
2021-04-14 18:51
KADOKAWA、サイバー攻撃による情報漏えいを確認と発表
IT関連
2024-06-30 03:21
AWS、開発スキルがなくても生成AIへのプロンプトで業務アプリが作れる「AWS App Studio」プレビュー公開
AWS
2024-07-12 21:51
エヌビディア、生成AI向けプラットフォームを発表
IT関連
2023-03-23 07:55
アカマイ、脅威ハンティングサービス「Akamai Hunt」を発表
IT関連
2023-04-14 19:26
グーグル、1000言語に対応するAIモデルを構築へ
IT関連
2022-11-05 08:10
新興市場の問題を解決するメキシコの中古車販売ユニコーンKavakが531.7億円を調達、評価額は4385億円
ネットサービス
2021-04-09 12:53
「Chromium」アップデートで動画再生品質向上–「Raspberry Pi OS」を見る
IT関連
2021-02-21 09:12
日本の従業員の46%がリスクを知りつつも危険な行動–プルーフポイント調査
IT関連
2024-03-07 11:31
顧客紹介マッチングサービス「Saleshub」が1億円調達、「つながりマッチング」機能も正式リリース
ネットサービス
2021-07-15 09:02
SaaSの購買サービスで成長するVendrがシリーズAで約65.5億円の大型資金調達
ソフトウェア
2021-03-10 00:19
ミクシィ、AI活用したテスト自動化ツールを導入
IT関連
2022-09-13 03:21
ユーザーをだます「ダークパターン」デザインを集めて企業の恥を晒す通報窓口ができた
パブリック / ダイバーシティ
2021-05-21 22:17