ブラウザでサポートされている高度なウェブ機能これらの機能を利用するウェブアプリには、どのようなものがありますか?これらの質問に答えるには、ブラウザ テストサイトとブラウザ拡張機能をご確認ください。
Project Fugu は、ウェブの機能のギャップを埋め、新しいクラスのアプリケーションをウェブ上で実行できるようにするための、複数の企業による取り組みです。具体的には、アプリ デベロッパーが使用できる新しい API をブラウザに追加し、これまで不可能だったユースケースを実現できるようにします。使用しているブラウザがサポートしている API は何ですか?これらの API を使用するウェブ アプリケーションにはどのようなものがありますか?詳しく見てみましょう。
ブラウザはどの程度 Fugu ですか?
File Handling、File System Access、Async Clipboard、Web Share などの Project Fugu API により、プラットフォーム固有のアプリでしか利用できないと思われていた機能をウェブに導入できるようになりました。たとえば、画像ファイルをダブルクリックして関連付けられた PWA で開き、変更を加えて変更をファイルに保存し、画像の内容を別のアプリにコピーしたり、メール クライアントと共有したりできるようになりました。これは、最近までウェブでは不可能だったフローです。
できることを確認するには、アプリケーション How Fugu is my browser? をチェックし、お使いのブラウザがサポートしている Project Fugu API を確認してください。すべての機能がすべてのプラットフォームで公開されているわけではありません(たとえば、Contact Picker API は現在モバイルでのみ公開されています)。そのため、パソコンでテストした場合にスコアが 100% に達することは技術的に不可能です(その逆も同様です)。したがって、このテストは絶対的な科学ではなく、遊び心のある競技として捉えてください。テストされた機能ごとに、関連するドキュメントへのリンクが用意されているため、機能の詳細を確認できます。機能の検出が可能な場合は、その機能がブラウザでサポートされているかどうかに関する注記も表示されます。また、Chrome ステータスにリンクされたページ読み込み統計情報も表示され、特定の機能の人気度の経時的な変化を確認できます。
ブラウザが Web Share API をサポートしている場合は、フグと進行状況バーのすぐ横にある [共有] ボタンをクリックして、ブラウザのフグ度を共有できます。または、スクリーンショットをダウンロードして、任意のオンライン ソーシャル ネットワークで手動で共有することもできます。

ウェブの安全性
How Fugu is the web? という名前のコンパニオン ブラウザ拡張機能を使用すると、アクセスしているサイトで使用されている Fugu API を確認できます。Chrome ウェブストアからこの拡張機能をインストールしてウェブをブラウジングすると、一部のサイトの Fugu 魚カウンタに、検出された Project Fugu API のバッチが表示されます。たとえば、Excalidraw に移動すると、Excalidraw が検出可能な 9 個の Project Fugu API を使用しているため、カウンタは 9 にジャンプします。具体的には、次のとおりです。
- CacheStorage
- サービス ワーカー
- ウェブ共有
- Async Clipboard
- 非同期クリップボード(画像)
- ファイル システムへのアクセス
- ウェブ共有の目標
- ウェブ共有の対象(ファイル)
- ファイル処理

以前と同様に、ブラウザが Web Share API をサポートしている場合は結果を直接共有できます。サポートしていない場合は手動で共有できます。ブラウザが機能をサポートしているかどうかを確認するには、[詳細] をクリックして関連ドキュメントをご覧ください。箇条書きのリストにあるソースコードリンクをクリックすると、関連するソースコード スニペットを直接チェックアウトすることもできます。
まとめ
How Fugu is the Web? 拡張機能をインストールしてウェブをブラウジングすると、Project Fugu API バッジが頻繁に表示されるのが印象的です。たとえば、GitHub の新しい問題ページのように、画像をアプリに貼り付ける(より便利なオプションとしてアップロードするのではなく)などの便利な機能が備わっているページから、Excalidraw のように、ファイル処理、ファイル システムへのアクセス、クリップボードへのアクセスなどの複数の機能を利用する本格的なアプリまで、さまざまなものがあります。以前はプラットフォーム固有のアプリが必要だった場合でも、ウェブ アプリケーションで代用できる場合があります。たとえば、Wooting の Wootility アプリは、WebHID API を使用してゲーム用キーボードをプログラミングします。
同様に、選択したブラウザ(または他のブラウザや埋め込み WebView)の新しいバージョンごとに How Fugu is my browser? を実行すると、非常に満足できます。ブラウザの新しいリリースのほとんどで、ブラウザに新しい機能が追加されると、進行状況バーが少し上昇します。
ウェブ向けの開発はかつてないほど現実的になり、プラットフォームには驚異的なペースで新機能が追加されています。アプリを作成するための選択肢はウェブだけではありません。しかし、このテストサイトとブラウザ拡張機能によって、これまで検討していなかった「ウェブの可能性」をもう一度検討していただけることを願っています。