SiteGazer
SiteGazer crawls all of your pages and find errors from the crawled pages.
Requirement
- Node.js 10+
- Java 8+ (if you want to run
nu
plugin) - puppeteer dependencies if you want to install SiteGazer on Linux (SiteGazer depends on puppeteer)
Note: SiteGazer does not work on Windows Subsystems for Linux due to puppeteer limitation. See also this issue.
Install
$ yarn global add sitegazer
$ npm install -g sitegazer
If you want to install with sudo
on Linux systems, yarn is recommended way to install.
Unfortunately, sudo npm install -g sitegazer
may fail to install due to permission issue.
Usage
- Create sitegazer.config.js
Here's example of sitegazer.config.js. For full reference, see sitegazer.config.js reference section
"use strict"; moduleexports = urls: "https://phanective.org" "https://google.com" sitemap: true crawl: true plugins: "nu" "chrome-console" ;
- Start SiteGazer
$ cd /path/to/directory # Move to the directory which sitegazer.config.js exists $ sitegazer
sitegazer.config.js reference
"use strict"; moduleexports = urls: "https://phanective.org" "https://phanective.org/cv/" "https://google.com" sitemap: false crawl: false plugins: "nu" "chrome-console" userAgents: desktop: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" mobile: "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Mobile Safari/537.36" config: webhint: extends: "web-recommended" ;
urls
Type: string[]
Default: []
URLs to lint.
If crawl: false
and sitemap: false
, SiteGazer only lint the pages listed in urls
.
sitemap
Type: boolean
Default: true
If true, SiteGazer lint the URLs listed in sitemap.xml, in addition to URLs listed in urls
.
crawl
Type: boolean
Default: true
If true, SiteGazer detect <a>
tags from the linted pages, and lint the detected URLs in addition to URLs listed in urls
.
plugins
Type: string[]
Default: []
Linter plugins. Currently SiteGazer Supports following plugins:
nu
(Nu HTML Checker)chrome-console
(List errors detected on Console of Chrome Developer Tools)webhint
(WebHint)
userAgents
Type: object
Default:
desktop: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" mobile: "Mozilla/5.0 (Linux; Android 8.0; Pixel 2 Build/OPD3.170816.012) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Mobile Safari/537.36"
Object of user agent strings. If two or more user agent strings are given, SiteGazer lint with each user agent strings.
config
Type: object
Default: {}
Config for each plugins.
config.webhint
Type: object
Default: {}
Config for WebHint. It is the same as .hintrc. See WebHint document to learn more.
Example:
extends: "web-recommended"
License
Apache 2.0
© 2019 Jumpei Ogawa