Security News
Introducing the Socket Python SDK
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Measure (repeatedly) your broadband speed using Fast.com in a headless browser
Measure (repeatedly) your broadband speed using Fast.com in a headless browser.
Yes, WiFi isn't broadband and broadband isn't WiFi but ultimately, what is the speed you get on Fast.com? That's the speed of your connection to the Interwebs. The WiFi from your laptop to your router is unlikely to be the bottleneck so this ultimately measures your broadband.
This is a NodeJS script that opens Fast.com, written by Netflix, with a headless browser, hangs on till it gets a speed measurement. Then it records this number in a local database.
You run it like this (if you installed it globally):
howsmywifi
Running it once is about as useful as opening a browser tab to https://fast.com. To really get your money's worth, loop it like this:
howsmywifi --loop
...then wait. Let it run for a couple of minutes and bask in the glorious line chart that indicates your Internet Flash Gordonness.
The goal is to comprehend how your Internet speed is fluctuating. Perhaps Comcast is telling, for $100 a month you get "Up to 75Gbps" but what good is that if it turns out it hovers around 0.5Gbps most of the time?
It uses puppeteer to open
https://fast.com
in a headless Chrome browser. It then waits until
that app has managed to calculate your Internet speed. If it takes
longer than 30 seconds, it'll error out with a timeout.
If you run it with the --loop
flag, it'll repeatedly do this operation
over and over with some sleep in between (default is 5 min) and
print out a graph with a moving average on it.
All speed measurements are recorded in a local sqlite3
file. This is
useful for getting historical insights.
With npm
:
npm install howsmywifi
With yarn
:
yarn add howsmywifi
Or, globally, with npm
:
npm install -g howsmywifi
Or, globally, with yarn
(recommanded):
yarn global add howsmywifi
Basic operation is:
./node_modules/.bin/howsmywifi
That will give you, after a couple of seconds, a speed value. The more interesting thing is to run it repeatedly so a moving average can tell you what your speed is:
./node_modules/.bin/howsmywifi --loop
Check out the other options with:
./node_modules/.bin/howsmywifi --help
Like this:
Yeah, it ain't pretty. Neither is the code, but it's a start.
MIT.
FAQs
Measure (repeatedly) your broadband speed using Fast.com in a headless browser
The npm package howsmywifi receives a total of 0 weekly downloads. As such, howsmywifi popularity was classified as not popular.
We found that howsmywifi demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The initial version of the Socket Python SDK is now on PyPI, enabling developers to more easily interact with the Socket REST API in Python projects.
Security News
Floating dependency ranges in npm can introduce instability and security risks into your project by allowing unverified or incompatible versions to be installed automatically, leading to unpredictable behavior and potential conflicts.
Security News
A new Rust RFC proposes "Trusted Publishing" for Crates.io, introducing short-lived access tokens via OIDC to improve security and reduce risks associated with long-lived API tokens.