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
PFNが技術提供、キャラ配信の「IRIAM」が表情も含めた「AIによる自動キャラモデリング技術」をスマホで実用化
人工知能・AI
2021-06-22 07:01
NECプラットフォームズ、業務用タブレット端末「TWINPOS Sx」発売へ–現場のDXを支援
IT関連
2022-09-07 06:21
Twitter、24時間で投稿が消える「Fleet」を8月3日に終了へ
アプリ・Web
2021-07-16 02:12
FBI、「Exchange」の脆弱性対応で米国内サーバーのウェブシェルを強制除去
IT関連
2021-04-14 12:03
「NP後払い」のネットプロテクションズがJCBと資本提携、約60億円の調達とともに事業連携を強化
フィンテック
2021-02-26 01:13
Paladinが初の行政向け緊急対応ドローン「ナイトホーク」を発売
IT関連
2021-08-21 19:34
コナミがOculus Quest向けゲームに参入 VR音ゲー「BEAT ARENA」発売へ
最近の注目ニュース
2021-03-11 13:48
ツイートに「他ユーザーからのメモ」を表示する機能 米国でスタート
企業・業界動向
2021-06-05 09:37
南アフリカのVC企業Knife Capitalが資金52.5億円確保、シリーズB10〜12社への投資を計画
VC / エンジェル
2021-02-14 01:13
成田空港、“顔パス”搭乗を実運用へ
IT関連
2021-07-21 10:52
マイクロソフト、「Office LTSC」「Office 2021」のリリース予定など明らかに
IT関連
2021-02-19 10:56
マッチングサービスBumbleが1株43ドルでIPO
ネットサービス
2021-02-12 01:27
新宿の巨大猫、制作元がメイキング画像を公開 「どの角度なら立体的?」を3DCGで検証
ネットトピック
2021-07-21 23:52
ウェブブラウザーBraveがピア・トゥ・ピアプロトコルIPFSのネイティブサポートを追加
ネットサービス
2021-01-21 18:30