I built a zero-dependency CLI that crawls your site and lints its JSON-LD
Description and use
A zero‑dependency CLI that crawls a site, extracts JSON‑LD, runs comprehensive checks, and integrates with CI for automated linting.
Problem
Structured data errors often go unnoticed because they don't break page rendering, yet they harm SEO and rich results. Existing tools test only single URLs, making site-wide audits cumbersome for CI pipelines.
Outcome
The tool provides fast, zero‑dependency audits of JSON‑LD across entire sites, catching common errors (invalid JSON, missing context/type, property omissions, value sanity, duplicates, and missing structured data) and integrating seamlessly into CI pipelines.
Workflow
- 1. Run
node schema-audit.mjs https://example.com/to audit a live site. 2. Use--sitemap https://example.com/sitemap.xmlto crawl all pages. 3. Optionally runnpm run demofor an offline demo with seeded issues. 4. Review the human report or use--jsonfor machine‑readable output. 5. Configure CI to run the CLI weekly and fail the build if exit code indicates errors. - 6. Fix reported issues in the site’s JSON‑LD and re‑run the audit to confirm resolution.
Evidence
It extracts every ld+json block (including @graph and nested entities) and runs 9 checks: JSON validity, @context/@type presence, required and recommended properties, value sanity, duplicate entities and pages with no structured data at all.
- Record date: 2026-09-08T23:46:11.035Z