Documentation

Guides and references

Developer Experience

Scripts

generate-icons, submit-sitemap, validate-pseo, check-claims.

Overview

Scripts live in scripts/ and are run via package.json:

ScriptCommandDescription
generate-iconspnpm generate:iconsGenerate app icons from source
submit:sitemappnpm submit:sitemapSubmit sitemap to IndexNow
submit:bingpnpm submit:bingInstructions for Bing Webmaster Tools
validate:pseopnpm validate:pseoRequired pSEO blocks, FAQ floor, last-verified recency
check:claimspnpm check:claimsEditorial claim gate (regex + TypeSafe)

generate-icons

scripts/generate-icons.js — Generates favicon and app icons in various sizes. Run after adding or changing the source icon.

submit:sitemap

scripts/submit-sitemap.ts:

  • Reads sitemap segments from lib/seo/sitemap.ts
  • Submits URLs to IndexNow API
  • Requires INDEXNOW_KEY env var
  • Use after deploying new content to notify search engines

submit:bing

scripts/submit-to-bing.ts — Prints instructions for manually submitting your sitemap to Bing Webmaster Tools. Does not auto-submit.

validate:pseo

scripts/validate-pseo.js checks comparison, alternatives, integration, glossary, and persona JSON:

  • Required headings (Quick Answer, Evidence, Best For)
  • At least 3 FAQs
  • dateModified not older than 180 days

Run before deploying pSEO changes. This is structure only. It does not read whether the copy overclaims.

check:claims

scripts/check-claims.ts — pnpm check:claims

  • Collects blog MDX, docs MDX, and content/pseo/*.json
  • Fails on banned referee phrases in code
  • Sends each page plus productFacts to TypeSafe Jev (jev-1.13.0) for five yes/no judgments
  • Requires TYPESAFE_API_KEY unless you pass --dry-run or --self-test

Useful flags: --path content/blog/foo.mdx, --kind pseo, --strict, --json.