All port scanning runs entirely in your browser. Your browser sends fetch() requests to 127.0.0.1 (localhost). These requests never leave your machine — they go from your browser to your own computer's network stack.
No scan results are sent to our servers. We do not collect, store, or transmit any information about which ports are open on your machine.
We use localStorage to remember your preferences (theme, port selection, timeout, concurrency). This data stays in your browser and is never sent to us.
We load four libraries from cdnjs.cloudflare.com, all with Subresource Integrity (SRI) hashes:
Cloudflare's CDN may log standard HTTP request metadata (IP address, user-agent) per their own privacy policy. We have no access to these logs.
We use Google Analytics to measure page views and usage patterns. No scan results or port data are sent to Google. We do not run ads.
If you embed scanner.js on your own site, scan results stay in the user's browser. What you do with the results in your own code is your responsibility.