フロントエンドカンファレンス北海道2025
レギュラートーク(20分)

Tauri の隠れコストとその解決方法

uzimaru0000 uzimaru uzimaru0000

Tauri は軽量でも「OS 依存 WebView」と「ビルド待ち」の二重コストが開発速度を阻害します。
Electron では Chromium が吸収していた OS 間の実装差異を自分たちで解決する必要があり、スクリーンキャプチャなどブラウザ未実装機能も Rust 側で補完しなければなりません。
さらに UI 修正の共有のために毎度フルビルド配布が必要で 15 分超の待機が発生します。
本発表では以下を紹介します。

  • 音声API を Rust 側で抽象化し OS 環境に依存せず動作させる方法
  • OS ごとに機能を分岐する方法
  • Tauri API を Bridge パターンで抽象化し、ブラウザ/Tauri 環境をシームレスに切り替える手法
  • plop によるボイラープレート自動生成で開発サイクルを高速化する仕組み