Overview
scripts/generate-sitemap.ts exists and is referenced in package.json as generate:sitemap, but it is not called by the build script. Production deployments ship without an up-to-date sitemap.xml, harming SEO and causing search engines to rely on stale or incomplete page indexes.
Specifications
Features:
- sitemap.xml is regenerated on every production build
- The sitemap includes all public course pages, static pages, and blog posts
Tasks:
- Add a postbuild script to package.json that calls generate:sitemap
- Ensure generate-sitemap.ts fetches the current list of published courses from the database
- Validate the output sitemap against the sitemap schema (max 50,000 URLs, max 50MB)
- Submit the sitemap URL to Google Search Console in the deployment guide
Impacted Files:
- package.json
- scripts/generate-sitemap.ts
Acceptance Criteria
- pnpm build produces a public/sitemap.xml file
- The sitemap contains all public course and static page URLs
- The sitemap validates against the sitemaps.org schema
Overview
scripts/generate-sitemap.ts exists and is referenced in package.json as generate:sitemap, but it is not called by the build script. Production deployments ship without an up-to-date sitemap.xml, harming SEO and causing search engines to rely on stale or incomplete page indexes.
Specifications
Features:
Tasks:
Impacted Files:
Acceptance Criteria