β οΈRequests 1 sensitive permission
Description
How it works
API data
The raw data for the different Project Fugu π‘ APIs is curated in a spreadsheet, which is then turned into JavaScript, so keeping the list of APIs updated is hopefully a straightforward task.
API detection
The extension monitors the requests a page makes via the chrome.webRequest.onBeforeRequest.addListener() API. Each response body, grouped by main frame, JavaScript, and Web App Manifest response bodies, is then run through a set of regular expressions like /navigator\.hid\.requestDevice\s*\(/g to determine if the code hints at a Project Fugu π‘ API potentially being used.
Browser support detection
Most Project Fugu π‘ APIs are easily feature-detectable by checking for the existence of interfaces or properties, for example, as in 'BarcodeDetector' in window. Other APIs require a ServiceWorkerRegistration, but luckily the popup window in Manifest V3 extensions uses a service worker, so it can be used via an IIFE that can be run in the client or the service worker. An example is (async () => 'periodicSync' in (await navigator.serviceWorker?.ready || self.registration))().
The support categories are listed below:
βοΈ Supported by your browser.
π« Not supported by your browser.
π€· Support unknown for your browser. (The only way to know would be user-agent sniffing.)
Deep-linking
The extension makes use of Text Fragment URLs to deep-link to the occurrence of a detected API, for example https://airhorner.com/scripts/main.min.js#:~:text=navigator.setAppBadge(. For main frame documents, the source code gets rendered in a helper HTML page controlled by the extension, since it is impossible to link to view-source: protocol links.
Limitations
β’ The chrome.webRequest.onBeforeRequest.addListener() API unfortunately does not "see" requests that are handled by a service worker (crbug.com/766433). There are three possible workarounds for this:
- Hard-reload via β/ctrl+shift+r.
- Open DevTools and check the Bypass for network checkbox in the Service Worker section of the Application tab.
- Clear storage in the Storage section of the Application tab.
β’ The extension only does static code analysis, that is, there is no guarantee that the app actually uses the code snippet where a Project Fugu π‘ API was detected.
β’ Heavily minified code will not be detected. For example, if an app minifies navigator.clipboard.write() to const nav = navigator; nav.clipboard.write(), the extension will not detect this.
License
Apache 2.0.
Reviews
Loading reviews...
Permissions (3)
Permissions
activeTabβΉ Can access the current tab when you click the extension webNavigationβΉ Can monitor navigation events webRequestβΉ Can observe and analyze network traffic
Details
| Version | 1.24.0 |
| Updated | Dec 10, 2025 |
| Size | 125KiB |
| First Seen | Mar 26, 2026 |
More by Thomas Steiner
Popular in developer
GoFullPage - Full Page Screen Capture
by GoFullPage
10M
β
4.89
developer
10M
β
4.89
developer
TouchEn PC보μ νμ₯
by λΌμ¨μνμ΄
8M
β
1.33
developer
8M
β
1.33
developer
React Developer Tools
by Meta
5M
β
3.95
developer
5M
β
3.95
developer
Meta Pixel Helper
by Meta
4M
β
3.91
developer
4M
β
3.91
developer
ColorZilla
by colorzilla.com
4M
β
4.59
developer
4M
β
4.59
developer
Popular Extensions
Adobe Acrobat: PDF edit, convert, sign tools
by Adobe Inc.
331M
β
4.40
workflow
331M
β
4.40
workflow
AdBlock β block ads across the web
by AdBlock
62M
β
4.48
workflow
62M
β
4.48
workflow
θΏ
ι·δΈθ½½ζ―ζ
by Shenzhen Xunlei Network Technology Co., Ltd.
59M
β
2.77
workflow
59M
β
2.77
workflow
Grammarly: AI Writing Assistant and Grammar Checker App
by Grammarly
42M
β
4.50
communication
42M
β
4.50
communication
Adblock Plus - free ad blocker
by eyeo GmbH
41M
β
4.39
workflow
41M
β
4.39
workflow