YSlow for Command Line

beta

YSlow for Command Line runs on Node.JS and requires a HAR file as input source in order to analyze page performance. It is currently available as a NPM package for installation.

Installation

$ npm install yslow -g

Help

$ yslow --help Usage: yslow [options] [file ...] Options: -h, --help output usage information -V, --version output the version number -i, --info <info> specify the information to display/log (basic|grade|stats|comps|all) [basic] -f, --format <format> specify the output results format (json|xml|plain) [json] -r, --ruleset <ruleset> specify the YSlow performance ruleset to be used (ydefault|yslow1|yblog) [ydefault] -b, --beacon <url> specify an URL to log the results -d, --dict include dictionary of results fields -v, --verbose output beacon response information Examples: yslow file.har yslow -i grade -f xml -b http://server.com/beacon file1.har file2.har yslow -info all --format plain /tmp/*.har yslow -i basic --rulseset yslow1 -d < file.har curl example.com/file.har | yslow -i grade -b http://server.com/beacon -v More Info: http://developer.yahoo.com/yslow/help/beacons.html#version2

As a module

$ node > require('fs').readFile('example.com.har', function (err, data) { var har = JSON.parse(data), YSLOW = require('yslow').YSLOW, doc = require('jsdom').jsdom(), res = YSLOW.harImporter.run(doc, har, 'ydefault'), content = YSLOW.util.getResults(res.context, 'basic'); console.log(content); }); { w: 98725, o: 89, u: 'http%3A%2F%2Fexample.com%2F', r: 9, i: 'ydefault', lt: 981 }

Other YSlow Versions

Frequently Asked Questions

  1. What platforms does YSlow run on?
  2. How does YSlow work?
  3. How are the grades computed?
  4. How do I add my CDN hostname to YSlow for Rule 2?
  5. What YSlow results are included in the YSlow beacon?

See more...

Contact Us

YSlow development is discussed in the Exceptional Performance group.