website-validator
TypeScript icon, indicating that this package has built-in type declarations

1.3.0 • Public • Published

validators:

  • .html
    • valid html
    • inline style => warning (potential CSP error)
    • style tag => warning (potential CSP error)
    • script tag with inline content => warning (potential CSP error)
    • ids unique on the page
    • link => target page exists (and is html) + fragment points to a valid place + fragment inside same page works
      • (live url only) if content type is defined for the link => validate that response has that content type
    • canonical url => canonical does not point to a redirect + target page has: no canonical or canonical === itself
      • at most 1 canonical url per page
    • external script/style: check if integrity present (otherwise the 3rd party can manipulate)
    • json/ld script tags
      • valid json format
      • structure matches
    • extract
      • styles
      • javascripts
      • images (src + srcset) + picture
      • videos (source, poster)
      • og image (+video) tags (+twitter, fb)
      • canonical url
      • rss/atom feed links
      • favicons (link[rel=icon])
  • .js
    • (live url only) validate response content type
    • valid js file
  • .css
    • (live url only) validate response content type
    • valid css file
    • extract
      • url(...)
  • .xml
    • (live url only) validate response content type
    • valid xml
  • .json
    • (live url only) validate response content type
    • valid json
    • if a string is a URL then validate that too: internal + exists
  • .jpg, .jpeg
    • (live url only) validate response content type
    • valid jpeg
  • .png
    • (live url only) validate response content type
    • valid png
  • .svg
    • (live url only) validate response content type
    • valid xml
    • valid svg
    • extract: links
  • .epub
    • (live url only) validate response content type
    • epub validator
  • .pdf
    • (live url only) validate response content type
    • valid pdf
    • extract: links
  • .zip
    • (live url only) validate response content type
    • valid zip
  • robots.txt
    • (live url only) validate response content type
    • validate structure
    • gptbot disallow missing => warning
    • read sitemap(s) link
      • validate that sitemap is internal
    • host present => check if that's the same as in the argument
  • sitemap
    • check all links are internal
    • text => all pages accessible
    • xml => check structure + lastmod + all pages accessible
  • rss.xml (link[type=application/rss+xml] exists from an html)
    • (live url only) validate response content type
    • validate rss structure
    • validate timestamp formats
    • validate links point to internal, valid pages
  • atom.xml (link[type=application/atom+xml])
    • (live url only) validate response content type
    • validate atom structure
    • validate timestamp formats
    • validate links point to internal, valid pages

extra:

  • follow redirects: meta[http-equiv=refresh] + status codes (if site)
  • validate: redirect chain: redirect's target is not a redirect

live url only:

  • (if https) check tls certificate validity
  • (if https) check if certificate is trusted from root
  • ipv6 accessible

arguments:

  • domain
  • (optional) sitemap(s): url or contents
    • will be checked
  • directory or live URL
  • (live url only) max depth

results:

  • errors
  • (live url only) all files + response content types
  • (configurable) screenshots for pages
  • (configurable) lighthouse reports for pages
  • link structure: what links to what
  • rss stream(s)
  • atom stream(s)
  • sitemap(s) link

compare reports:

  • any new errors
  • new links in the sitemap(s)
  • broken backlinks (+og:images + og:videos + inside json files)
  • new rss item
  • new atom item

Readme

Keywords

Package Sidebar

Install

npm i website-validator

Weekly Downloads

26

Version

1.3.0

License

ISC

Unpacked Size

173 kB

Total Files

26

Last publish

Collaborators

  • sashee