Tauriはフロントエンドの技術としてWeb技術(HTML/CSS/JavaScript)を使用しているため、Webブラウザでできることは基本的にすべてTauriのフロントエンドでできます。
しかし、「Tauri単体(Web技術のみ)ではできないこと」は、主にOSのネイティブ機能へのアクセスが必要な部分になります。
⚠️ Tauriのフロントエンド(Web側)単体ではできないこと Tauriは、Webブラウザの制限を取り払ってデスクトップアプリとして機能させるために、以下の処理を必ずバックエンドのRustコードを経由させる必要があります。
キーボードやマウスの操作シミュレーション: バーチャルキーボードの例でいうと、ユーザーの代わりにキー入力をOSに送信する機能は、Web側のJavaScriptでは実現できません。これはRustのライブラリ(enigoなど)を経由する必要があります。
通知の表示: OSのネイティブな通知領域にメッセージを表示すること。(ただし、TauriはJavaScriptから簡単に呼び出せる@tauri-apps/api/notificationを提供しており、内部でRustを経由しています。)
システム情報の取得: CPUやメモリの使用状況、OSのバージョンなどの詳細なシステム情報を取得すること。
ローカルファイルやフォルダの読み書き: ユーザーの許可なく勝手にPC上のファイルを操作することはできません。ファイルのオープン/保存ダイアログの表示、ファイルの読み書きなどは、Rustバックエンドの機能を使います。
シリアルポートやUSBデバイスへのアクセス: 外部のハードウェアと通信する場合、ネイティブなAPIを経由する必要があります。
ウィンドウの最小化、最大化、サイズ変更:
カスタムメニューバーの作成:
「常に最前面表示 (Always on Top)」などの特殊なウィンドウ設定:
✅ まとめ Tauriは、Webブラウザと同じようにUIの構築とユーザーとのやり取りはフロントエンド(Web技術)で行い、OSやシステムとのやり取りはバックエンドのRustが行うという役割分担をしています。
そのため、フロントエンド単体でできないことがあったとしても、TauriのAPIを通じてバックエンドのRust機能を呼び出すことで、必要なデスクトップアプリの機能を実現できます。
不適切なコンテンツとして通報するには以下の「送信」ボタンを押して下さい。 管理チームへ匿名通報が送信されます。あなたが誰であるかを管理チームに特定されることはありません。
どのように不適切か説明したい場合、メッセージをご記入下さい。空白のままでも通報は送信されます。
通報履歴 で、あなたの通報と対応時のメッセージを確認できます。
残ってた言葉(メール) 気持ち 全件削除
「内容が失われますが、消去してもよろしいですか?」
Tauriはフロントエンドの技術としてWeb技術(HTML/CSS/JavaScript)を使用しているため、Webブラウザでできることは基本的にすべてTauriのフロントエンドでできます。
しかし、「Tauri単体(Web技術のみ)ではできないこと」は、主にOSのネイティブ機能へのアクセスが必要な部分になります。
⚠️ Tauriのフロントエンド(Web側)単体ではできないこと
Tauriは、Webブラウザの制限を取り払ってデスクトップアプリとして機能させるために、以下の処理を必ずバックエンドのRustコードを経由させる必要があります。
Web技術だけではセキュリティ上の制限からアクセスが禁じられている、OSに深く関わる操作です。
キーボードやマウスの操作シミュレーション: バーチャルキーボードの例でいうと、ユーザーの代わりにキー入力をOSに送信する機能は、Web側のJavaScriptでは実現できません。これはRustのライブラリ(enigoなど)を経由する必要があります。
通知の表示: OSのネイティブな通知領域にメッセージを表示すること。(ただし、TauriはJavaScriptから簡単に呼び出せる@tauri-apps/api/notificationを提供しており、内部でRustを経由しています。)
システム情報の取得: CPUやメモリの使用状況、OSのバージョンなどの詳細なシステム情報を取得すること。
セキュリティ上の理由から、Webブラウザでは許可されていないローカルファイルや外部デバイスへの直接的なアクセスです。
ローカルファイルやフォルダの読み書き: ユーザーの許可なく勝手にPC上のファイルを操作することはできません。ファイルのオープン/保存ダイアログの表示、ファイルの読み書きなどは、Rustバックエンドの機能を使います。
シリアルポートやUSBデバイスへのアクセス: 外部のハードウェアと通信する場合、ネイティブなAPIを経由する必要があります。
ウィンドウの状態を変更したり、独自のメニューを作成したりする操作です。
ウィンドウの最小化、最大化、サイズ変更:
カスタムメニューバーの作成:
「常に最前面表示 (Always on Top)」などの特殊なウィンドウ設定:
✅ まとめ
Tauriは、Webブラウザと同じようにUIの構築とユーザーとのやり取りはフロントエンド(Web技術)で行い、OSやシステムとのやり取りはバックエンドのRustが行うという役割分担をしています。
そのため、フロントエンド単体でできないことがあったとしても、TauriのAPIを通じてバックエンドのRust機能を呼び出すことで、必要なデスクトップアプリの機能を実現できます。