leotsem / psi

PageSpeed Insights with reporting

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

psi Build Status

PageSpeed Insights with reporting

Run mobile and desktop performance tests for your deployed site using Google PageSpeed Insights with tidy reporting for your build process.

Install

$ npm install --save psi

Usage

var psi = require('psi');

// get the PageSpeed Insights report
psi('html5rocks.com', function (err, data) {
  console.log(data.score);
  console.log(data.pageStats);
});

// output a formatted report to the terminal
psi.output('html5rocks.com', function (err) {
  console.log('done');
});

API

psi(url, [options], callback)

url

Required
Type: string

URL of the page for which the PageSpeed Insights API should generate results.

options

Type: object

key

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.

strategy

Type: string
Default: mobile
Values: mobile, desktop

Strategy to use when analyzing the page.

locale

Type: string
Default: en_US

Locale results should be generated in.

threshold

Type: number
Default: 70

Threshold score to pass the PageSpeed test.

callback(error, data)

Required
Type: function

data

Type: object

The response from Google PageSpeed Insights.

psi.output(url, [options], [callback])

Output the formatted report to the terminal.

url and options is the same as psi().

callback(error)

Type: function

CLI

$ npm install --global psi
$ psi --help

  Usage
    psi <url> <options>

  Example
    psi todomvc.com --strategy=mobile

  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.

Getting PSI into your build

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 project, we recommend using ngrok.

License

Apache-2.0
Copyright 2015 Google Inc

About

PageSpeed Insights with reporting

License:Apache License 2.0


Languages

Language:JavaScript 100.0%