wry
Tauriプログラム(The Commons Conservancy傘下)が開発している、クロスプラットフォームのWebViewレンダリングライブラリ。各OSのネイティブWebエンジンをラップし、統一的なRust APIでWebViewの生成・操作(JS実行、IPC等)を行えるようにする。
対応プラットフォームとバックエンド
| OS | 使用するWebエンジン |
|---|---|
| Windows | WebView2(Edge Chromiumベース) |
| macOS/iOS | WKWebView(WebKit) |
| Linux | WebKitGTK(X11/Wayland) |
| Android | 対応あり |
ElectronのようにWebエンジン自体をバンドルせず、OSに標準で入っているWebViewを利用する設計のため、アプリのバイナリサイズが小さく済む。
使い方
WebViewの表示にはウィンドウとイベントループが必要で、HasWindowHandleを実装したウィンドウ型が要る。公式にはtao(winitのフォーク)との組み合わせが推奨されている。os-webview(デフォルト)、protocol(カスタムURLスキーム)、file-dropなどのfeatureフラグで機能を切り替えられる。
Tauriとの関係
wryはTauriの中核コンポーネントで、TauriアプリのWebView描画を担う(ウィンドウ管理は姉妹プロジェクトのtaoが担当)。Tauriから独立した単体クレートとしても利用可能で、gpui-wryのようにTauri以外のフレームワークからWebView機能を取り込む用途にも使われている。