
Research
npm Malware Targets Telegram Bot Developers with Persistent SSH Backdoors
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
PageSpeed Insights with reporting
Run mobile and desktop performance tests for your deployed site using Google PageSpeed Insights v5 with tidy reporting for your build process.
$ npm install psi
const psi = require('psi');
(async () => {
// Get the PageSpeed Insights report
const data = await psi('https://theverge.com');
console.log(data.ruleGroups.SPEED.score);
console.log(data.pageStats);
// Output a formatted report to the terminal
await psi.output('https://theverge.com');
console.log('Done');
// Supply options to PSI and get back speed and usability scores
const data2 = await psi('https://theverge.com', {
nokey: 'true',
strategy: 'mobile'
});
console.log('Speed score:', data.ruleGroups.SPEED.score);
console.log('Usability score:', data.ruleGroups.USABILITY.score);
})();
As of PSI 2.x, we expose both the PageSpeed Insights speed and usability scores. The latter is based on usability rules that score a page based on factors like the presence of a sensible mobile viewport.
Returns a promise for the response data from Google PageSpeed Insights.
Type: string
URL of the page for which the PageSpeed Insights API should generate results.
Type: Object
Type: string
Default: Free tier
When using this module for a production-level build process, registering for an API key from the Google Developer Console is recommended.
Type: string
Default: mobile
Values: mobile
desktop
Strategy to use when analyzing the page.
Type: string
Default: en_US
Locale results should be generated in.
Type: number
Default: 70
Threshold score to pass the PageSpeed test. Useful for setting a performance budget.
Output the formatted report to the terminal.
Returns a promise for the response data from Google PageSpeed Insights.
url
and options
are the same as psi()
.
$ npm install --global psi
$ psi --help
Usage
$ psi <url>
Options
--key Google API Key. By default the free tier is used
--strategy Strategy to use when analyzing the page: mobile|desktop
--format Output format: cli|json|tap
--locale Locale results should be generated in
--threshold Threshold score to pass the PageSpeed test
--optimized Get the URL of optimized resources
--download Download optimized resources
Example
$ psi https://addyosmani.com --strategy=mobile
A sample Gulp project using PSI is available.
If you use Grunt, grunt-pagespeed
is a task by James Cryer that uses PSI under the hood.
For testing local projects, we recommend using psi-ngrok
or ngrok
.
Apache-2.0 - Copyright 2015 Google Inc
FAQs
PageSpeed Insights with reporting
The npm package psi-v5 receives a total of 2 weekly downloads. As such, psi-v5 popularity was classified as not popular.
We found that psi-v5 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.
Research
Malicious npm packages posing as Telegram bot libraries install SSH backdoors and exfiltrate data from Linux developer machines.
Security News
pip, PDM, pip-audit, and the packaging library are already adding support for Python’s new lock file format.
Product
Socket's Go support is now generally available, bringing automatic scanning and deep code analysis to all users with Go projects.