{
  "id": 4193949,
  "title": "I built a zero-dependency CLI that crawls your site and lints its JSON-LD",
  "url": "https://urgent.news/2026/08/29/i-built-a-zero-dependency-cli-that-crawls-your-site-and-lints-its",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-29T13:01:43.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/madahzadeh/i-built-a-zero-dependency-cli-that-crawls-your-site-and-lints-its-json-ld-225l"
  },
  "original_language": "en",
  "account": "Structured data failures often go unnoticed as the page displays correctly, yet the Product schema may display a price of $19.99, while a LocalBusiness loses its address through a website redesign. However, Google's Rich Results Test only checks one page at a time, which led to the creation of schema-audit, a single-file Node.js CLI that crawls an entire site and checks for JSON-LD issues in CI environments. This tool offers zero npm dependencies, making it a lightweight solution.\n\nschema-audit operates by extracting every ld+json block, including @graph and nested entities, and performing 9 checks: JSON validity, the presence of @context and @type, required and recommended properties per type, such as Article, Product (offers/price/priceCurrency), LocalBusiness, FAQPage, BreadcrumbList, Event, JobPosting, and Recipe. It also verifies value sanity, including ISO dates, numeric prices, and absolute URLs. The tool highlights duplicates and pages with no structured data at all, providing a human-readable report with suggestions for fixes and --json output for CI integration.\n\nSchema-audit's design includes exit codes for CI workflows, allowing users to run it weekly and fail the build if markup regressions are detected. The project is hosted on GitHub (github.com/madahzadeh/schema-audit) and released under the MIT license. As a third tool in the author's open-source technical SEO toolkit, schema-audit complements hreflang-audit and llms-txt-kit. The creator invites feedback on future features and improvements.",
  "summary": "Structured data breaks silently: the page renders fine while your Product schema has \"$19.99\" as a price, your LocalBusiness lost its address in a redesign, and your breadcrumbs go 1, 3. Google's Rich Results Test checks one URL at a time — I wanted the whole site, in CI. schema-audit is a single-file Node.js 20+ CLI with zero npm dependencies: node schema-audit.mjs https://example.com/ node…",
  "key_points": [
    "schema-audit is a single-file Node.js CLI tool",
    "Crawls entire site to check JSON-LD issues",
    "Zero npm dependencies for lightweight solution"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}