{"site":{"name":"NetPulse","tagline":"The internet's vital signs, live: traffic, outages, attacks, routing, protocol adoption, and the software ecosystem.","domain":"netpulse.pages.dev","userAgent":"NetPulse/0.1 (+https://netpulse.pages.dev; vital-signs dashboard)"},"instruments":[{"kind":"metric","order":"desc","staleAfter":"3d","seriesMode":"merge","unit":"views/day","decimals":0,"history":400,"needsKey":null,"higherIsWorse":false,"describe":"Daily human (bot-filtered) pageviews across every Wikimedia project — a vendor-neutral pulse of how much the public web is being read.","id":"internet-pageviews","section":"Vitals","title":"Wikipedia pageviews (human)","cadence":"6h","source":{"name":"Wikimedia Analytics (pageviews API)","url":"https://wikimedia.org/api/rest_v1/","license":"CC0 1.0"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"of 7","decimals":0,"history":288,"needsKey":null,"higherIsWorse":true,"describe":"How many of seven load-bearing internet providers are reporting anything other than \"all systems operational\" right now.","id":"providers-degraded","section":"Vitals","title":"Major providers degraded","cadence":"1h","source":{"name":"Statuspage status APIs (GitHub, Cloudflare, npm, Discord, OpenAI, Atlassian, Zoom)","url":"https://www.githubstatus.com/api","license":"public status pages"},"thresholds":[{"level":"critical","gte":4},{"level":"serious","gte":2},{"level":"warning","gte":1}]},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"index 0-1","decimals":3,"history":168,"needsKey":"CLOUDFLARE_API_TOKEN","higherIsWorse":true,"describe":"Application-layer attack traffic mitigated across Cloudflare, min-max normalised over the trailing week (1.0 = the busiest hour of the last 7 days) — the internet's background hostility level.","id":"radar-l7-attacks","section":"Vitals","title":"HTTP attack traffic index","cadence":"1h","source":{"name":"Cloudflare Radar — Layer 7 attacks","url":"https://radar.cloudflare.com/security-and-attacks","license":"Cloudflare Radar terms"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"alerts","decimals":0,"history":336,"needsKey":null,"higherIsWorse":true,"describe":"Connectivity-loss alerts IODA raised worldwide in the last six hours across countries, regions and individual networks — background is roughly 100-250.","id":"ioda-outage-alerts","section":"Outages","title":"Outage alerts (6 h)","cadence":"1h","source":{"name":"IODA — Georgia Tech / CAIDA","url":"https://ioda.inetintel.cc.gatech.edu/","license":"CC BY-NC-SA 4.0 (non-commercial)"},"thresholds":null},{"kind":"events","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"","decimals":1,"history":120,"needsKey":null,"higherIsWorse":true,"describe":"Every national or sub-national connectivity drop IODA flagged recently — the wall a country-level shutdown shows up on first.","id":"ioda-alerts","section":"Outages","title":"Country & region outages","cadence":"1h","source":{"name":"IODA — Georgia Tech / CAIDA","url":"https://ioda.inetintel.cc.gatech.edu/dashboard","license":"CC BY-NC-SA 4.0 (non-commercial)"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"prefixes","decimals":0,"history":365,"needsKey":null,"higherIsWorse":false,"describe":"Active IPv4 prefixes in the global routing table — the memory every default-free router in the world has to carry, and a slow measure of the internet growing and fragmenting.","id":"bgp-table-v4","section":"Routing","title":"IPv4 BGP table size","cadence":"1d","source":{"name":"APNIC / Geoff Huston — AS65000 BGP route view","url":"https://bgp.potaroo.net/index-bgp.html","license":"free to use with attribution"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"prefixes","decimals":0,"history":365,"needsKey":null,"higherIsWorse":false,"describe":"Active IPv6 prefixes in the global routing table — still a quarter the size of the IPv4 table, and the clearest measure of IPv6 actually being routed.","id":"bgp-table-v6","section":"Routing","title":"IPv6 BGP table size","cadence":"1d","source":{"name":"APNIC / Geoff Huston — AS65000 BGP route view (IPv6)","url":"https://bgp.potaroo.net/index-bgp.html","license":"free to use with attribution"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"events","decimals":0,"history":336,"needsKey":"CLOUDFLARE_API_TOKEN","higherIsWorse":true,"describe":"Medium-or-better confidence BGP hijacks plus route leaks Cloudflare detected in the last 24 hours — routing is the internet's trust-by-default layer, and these are the moments it gets abused or fumbled.","id":"radar-bgp-anomalies","section":"Routing","title":"BGP hijacks & route leaks (24 h)","cadence":"1h","source":{"name":"Cloudflare Radar — BGP anomaly detection","url":"https://radar.cloudflare.com/routing","license":"Cloudflare Radar terms"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":"5d","seriesMode":"merge","unit":"%","decimals":2,"history":400,"needsKey":null,"higherIsWorse":false,"describe":"Share of sampled end users worldwide whose connection can fetch a resource over IPv6 — the headline number for the internet finally outgrowing its 1981 address space.","id":"ipv6-capable","section":"Adoption","title":"IPv6-capable users","cadence":"1d","source":{"name":"APNIC Labs — IPv6 measurement (world)","url":"https://stats.labs.apnic.net/ipv6/XA","license":"(C) APNIC — re-use with attribution"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"%","decimals":1,"history":336,"needsKey":"CLOUDFLARE_API_TOKEN","higherIsWorse":false,"describe":"Share of HTTP requests served over HTTP/3 (QUIC) rather than HTTP/1.x or HTTP/2 — how fast the transport layer of the web is actually being replaced.","id":"radar-http3-share","section":"Adoption","title":"HTTP/3 share of requests","cadence":"1h","source":{"name":"Cloudflare Radar — HTTP version summary","url":"https://radar.cloudflare.com/adoption-and-usage","license":"Cloudflare Radar terms"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":"4d","seriesMode":"merge","unit":"/day","decimals":0,"history":365,"needsKey":null,"higherIsWorse":false,"describe":"Package downloads served by the npm registry in a day, whole registry — weekday peaks are roughly double the weekend, so read the shape, not one point.","id":"npm-downloads","section":"Ecosystem","title":"npm downloads","cadence":"6h","source":{"name":"npm registry download counts","url":"https://api.npmjs.org/downloads/point/last-day","license":"npm public API"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":"3d","seriesMode":"merge","unit":"users","decimals":0,"history":365,"needsKey":null,"higherIsWorse":false,"describe":"Estimated daily users connecting directly to the Tor network worldwide; sharp national spikes usually mean somebody just started blocking something.","id":"tor-users","section":"Privacy & Tor","title":"Tor users (daily)","cadence":"6h","source":{"name":"Tor Metrics — relay users","url":"https://metrics.torproject.org/userstats-relay-country.html","license":"CC0 1.0"},"thresholds":null},{"kind":"metric","order":"desc","staleAfter":"3d","seriesMode":"merge","unit":"relays","decimals":0,"history":365,"needsKey":null,"higherIsWorse":false,"describe":"Running relays in the Tor network — the volunteer infrastructure the whole anonymity guarantee rests on; bridges are tracked alongside in the detail.","id":"tor-relays","section":"Privacy & Tor","title":"Tor relays","cadence":"6h","source":{"name":"Tor Metrics — network size","url":"https://metrics.torproject.org/networksize.html","license":"CC0 1.0"},"thresholds":null},{"kind":"events","order":"desc","staleAfter":null,"seriesMode":"merge","unit":"","decimals":1,"history":120,"needsKey":null,"higherIsWorse":true,"describe":"Open and recently-resolved incidents declared by the platforms most of the web leans on, newest first.","id":"provider-incidents","section":"Incidents","title":"Major provider incidents","cadence":"1h","source":{"name":"Provider status pages + AWS Service Health Dashboard","url":"https://www.githubstatus.com/history","license":"public status pages"},"thresholds":null}]}