A client-side network security toolkit.
IP lookup, speed testing, breach detection, password generation, and DNS analysis — all in your browser.
NetScope is a lightweight, open-source network security toolkit that runs entirely in your browser. No backend servers, no build tools, no frameworks — just plain HTML, CSS, and JavaScript.
It gives you instant insight into your network footprint: where your traffic originates, how fast your connection is, whether your credentials have been compromised, and how well a domain's DNS and email security are configured.
Sign in with Google, GitHub, or email to save results across devices via Firebase. Or skip sign-in entirely — every feature works without an account.
| Feature | Description | |
|---|---|---|
| 🌐 | IP & Geolocation | Detect your public IP, ISP, ASN, proxy/VPN status, and map your approximate location |
| ⚡ | Speed Test | Multi-connection download, upload, ping, and jitter with animated gauges via Cloudflare |
| 🛡️ | Breach Check | Check emails (XposedOrNot) and passwords (HIBP k-anonymity) against known breaches |
| 🔒 | Password Generator | One-click presets (Password, PIN, Passphrase, Hex Key) plus custom length, character sets, and strength meter |
| 📡 | DNS & Security Scan | Lookup DNS records, check SPF/DMARC/DKIM, DNSSEC, and WebRTC leak detection |
| 🚀 | Full Scan | Run every security test in sequence with a step-by-step progress overlay |
| 📤 | Export | Copy results, share via email, or download a PDF report |
| 🎨 | Dark / Light Theme | Toggle between themes with persistent preference |
| 👤 | Authentication | Sign in with Google, GitHub, or email/password via Firebase |
| ☁️ | Cloud Save | Save and retrieve test results across devices (requires sign-in) |
Pure HTML, CSS, and JavaScript. The repo root is the deployable output — no bundler, no transpiler, no node_modules.
| Feature | Provider | How It's Used |
|---|---|---|
| IP Detection | ipify | Fetches public IP address |
| Geolocation | ipapi.co / ipwho.is | Resolves IP to location, ISP, ASN |
| Password Breach | HIBP Pwned Passwords | k-anonymity hash prefix lookup |
| Email Breach | XposedOrNot | Checks email against breach databases |
| DNS Lookup | Google DNS-over-HTTPS | Resolves DNS records over HTTPS |
| Maps | Leaflet + OpenStreetMap | Interactive geolocation map |
| Speed Test | Cloudflare | Multi-connection download/upload, ping, and jitter |
| Auth & Database | Firebase | Google, GitHub, & email auth + Firestore |
| PDF Export | jsPDF | Client-side PDF generation |
| Library | Version | Purpose |
|---|---|---|
| Leaflet | 1.9.4 | Map rendering |
| jsPDF | 2.5.1 | PDF export |
| Firebase SDK | 10.12.0 | Auth + Firestore (compat) |
| Inter | Variable | UI typeface |
| JetBrains Mono | Variable | Monospace typeface |
No dependencies to install. Clone and serve.
# Clone the repo
git clone https://github.com/patrickking67/netscope.git
cd netscope
# Serve locally (pick one)
npx serve .
# or
python3 -m http.server 3000
# or just open index.html in your browserFirebase powers authentication (Google, GitHub, email/password) and cloud save. The app works fully without it — these features just won't appear.
To configure Firebase for your own fork:
- Create a project at console.firebase.google.com
- Enable Authentication with your desired providers (Google, GitHub, Email/Password)
- Enable Cloud Firestore
- Copy your config into
assets/js/firebase-config.js
See the full walkthrough in docs/FIREBASE_SETUP.md.
NetScope deploys automatically to GitHub Pages via the included GitHub Actions workflow.
Push to main → .github/workflows/static.yml → Live on GitHub Pages
To deploy your own fork:
- Fork this repository
- Go to Settings > Pages and set source to GitHub Actions
- Push to
main— the site updates within minutes
- Passwords never leave your browser. They're SHA-1 hashed locally; only the first 5 hash characters are sent to HIBP (k-anonymity).
- All processing is client-side. No server receives your raw data.
- No analytics or tracking. Zero telemetry.
- Sign-in is optional. Every feature works without an account.
- Cloud saves are private. If signed in, results are stored in your own Firestore collection.
NetScope was inspired by several outstanding tools and services:
- DivergeIT Security Scanner — Created by Connor Bescos and Brian Yeo. An inspiration for NetScope's approach to client-side security scanning.
- Ookla Speedtest — The gold standard for internet speed testing. Inspired the multi-connection speed test with animated gauges and jitter measurement.
- Have I Been Pwned — Troy Hunt's pioneering breach notification service. NetScope uses HIBP's k-anonymity API for privacy-preserving password breach checks.
This project is licensed under the MIT License.
Copyright (c) 2026 Patrick King