💡

tauriを2日使って分かったこと

2024/11/02に公開

2日(合計5時間)触ってみてわかったことをまとめていきます。

感想

  • electronと比較するとアプリのサイズが小さい
  • 思い付きのアプリを作りたいときはすごい便利
  • webアプリだとデータの永続化やセキュリティに悩むが、tauriなら個人的な利用の範囲ならほぼ気にしなくていい
  • 型サポートが強い

どんなアプリを作ったか

  • カウントダウンのアプリを作った
  • フロントエンドはsolidjs

こまごました説明

electronと比較するとアプリのサイズが小さい

エクスプローラーでプロパティのサイズを比較すると以下のようになりました。

著者はWindowsを使ってます。

ライブラリ アプリが置いてあるフォルダのサイズ 「プログラムの追加と削除」で確認したサイズ どんなアプリをビルドしたか
electron 369MB 106MB npm init electron-app@latest my-app -- --template=vite-typescript で生成したものをそのままビルドした
tauri 13MB 12MB 今回作ったアプリ( npm create tauri-app で生成したコードに少し書き加えたくらい )

元々electronを触っていたのですが、大きさがネックでディスクを圧迫するのであまり食指が伸びてませんでした。

ですがtauriなら大きめの画像1枚追加する感覚でアプリを作成できます。

個人的にかなり大きいポイント

思い付きのアプリを作りたいときはすごい便利

サイズもそうですが、他の機能を見ても思い付きのアプリを作りたいときはすごい便利です。

  • create-tauri-app
    • tauriのプロジェクトを作るツールでプロンプトによってどんなフロントエンドを使いたいかなどを指定できます
    • 気分によってフロントエンド変えることができるのは結構うれしい(electronもviteを使えば簡単に対応できはしますが)
  • スマホアプリ
    • #[cfg(desktop)]#[cfg(not(desktop))] で切り替えてあげるだけで簡単にスマホアプリを作れます。

webアプリだとデータの永続化やセキュリティに悩むが、tauriなら個人的な利用の範囲ならほぼ気にしなくていい

webアプリだとデータの永続化をする場合はfirebaseやDBを立てるなどの外部サービスを使う必要がありますが、tauriなら適当にファイル作ってしまえば永続化できます。

セキュリティもwebアプリなら誰でもアクセスできるようにしてる場合考慮する必要がありますが、tauriならほとんど気にする必要はありません。(ほとんどと書いたのは保険のためで私は全く考慮してません)

型サポートが強い

https://github.com/specta-rs/tauri-specta

tauri-spectaを使えばmainプロセスとの連携を簡単に型に落とし込むことができます。

electronは割とごちゃごちゃする印象があります。(trpcを使えばうまくできそうですが)

終わり

2日間で分かったことと言えばこのくらいです。

以上です。

Discussion