Changelog
Generated from CHANGELOG.md in the project repository. Never maintained twice.
Unreleased
- changedPages: the project site uses the current shared theme (0.12.12).
2.4.1
11 November 2026
- changedDocs: the README is a short overview that links to the documentation on the project site; everything it explained before is in the docs. The graph mode and on-demand rendering guides show how graph mode works and the measured time to first byte as diagrams.
- changednpm: the package's homepage is the project site on GitHub Pages instead of the retired product page.
- changedPages: the project site uses the current shared theme (0.12.10).
- changedProject site: search result cards and source labels meet 4.5:1 contrast again with the current theme, and the terminal scenes are rebuilt with castwright 0.6.
2.4.0
11 November 2026
- changedDependencies: zod 4.6.7 and schema-dts 2.1.0 in the lockfile; tests run on Astro 7.4.
- changedMiddleware: without
useGraphandgenerateMeta, pages rendered on demand stream instead of being buffered; sitemap-hint conflicts are still detected, and an error found after the first chunk breaks off the response. Details: On-demand rendering. - changedPages: the project site uses the current shared theme (0.12.6), chartlet 0.23 and Astro 7.4.
- changedProject site: the footer follows the page language instead of always showing German text, and the start page now carries a release teaser and an FAQ (theme 0.11.1).
- changedWebSiteSchema: docs and README describe
searchQueryInputas schema.orgSearchActionmarkup; Google no longer shows the sitelinks search box (since 21 November 2024). - changedContributors:
npm run test:compatruns the full test suite against Astro 5 and Astro 6 with their matching Node adapter;npm run bench:ssrmeasures time to first byte and memory of on-demand pages. - fixedArticleSchema:
mainEntityOfPagerefers to the same page@idas aWebPageSchemawith an expliciturl, whichever component renders first and with or without graph mode. - fixedBuild check: JSON-LD blocks containing
nullno longer crash the build; other entries that are not objects are reported with their file. - fixedDev Toolbar: offers are checked by their own type, also inside an
offersarray, and prices inpriceSpecificationare accepted. - fixedLocalBusinessSchema:
parentOrganizationandsubOrganizationfromdefaultLocalBusinessapply when the props are not set. - fixedMiddleware: pages rendered through a rewrite (
next('/target'),context.rewrite()) keep their JSON-LD graph and generated meta tags. - fixedWebSiteSchema: the SearchAction
query-inputnames the same placeholder asurlTemplate, whateversearchQueryInputis.
2.3.1
26 October 2026
- addedReleases: the Release workflow publishes the package to npm through trusted publishing, after approval in the
npmenvironment — no npm token is stored anywhere and the package carries a provenance statement. - changedProject site: a shorter hero title, and a 54-column terminal scene on phones so the build output stays readable; theme 0.8.3.
2.3.0
24 October 2026
- addedLinked data:
idoutputs the@idof the main entity onArticleSchema,ProductSchema,EventSchema,RecipeSchema,VideoSchema,SoftwareAppSchema,JobPostingSchema,CollectionPageSchema,FAQSchemaandBreadcrumbSchema, so other nodes can link to it. Details: Graph mode. - addedLinked data: relations take a reference with
idorurland a freetype:isPartOf/hasPart(articles, pages, recipes, videos, apps, collection pages), product variants and related products,parentOrganization/subOrganization,superEvent/subEvent. Details: Graph mode. - changedContributors: the dev toolbar app is split into modules under
src/toolbar/; its behavior is unchanged. - changedContributors: the showcase on the project page shows each example as a search result illustration above its JSON-LD.
- changedContributors:
demo/is reduced to one playground page with all schema components; the project page examples live inexamples/.
2.2.0
23 October 2026
- addedLinked data:
@idfor the entities other items link to, so in graph mode all items point to the same organization, website, business or person:publisherId,publisher.id,id,organizer.id,performer.id,hiringOrganizationId,authorIdanddefaultArticlePublisher.id/defaultLocalBusiness.idon the matching components. - changedWebPageSchema: outputs its URL as
@id, the same valueArticleSchemauses formainEntityOfPage, so in graph mode both refer to one node.
2.1.0
14 October 2026
- breakingProductSchema: validates
offers,brand,shippingDetailsandreturnPolicy(and thedefaultBrand,defaultShippingDetails,defaultReturnPolicyoptions): prices, ISO 4217 currencies, ISO 3166 country codes, schema.org enumerations, day ranges. AnOfferneedspriceandpriceCurrencyor apriceSpecification. Data that passed before may now fail the build. - addedUtils:
validateRecommended(type, data, options?)counts configured defaults (defaultBrand,defaultArticlePublisher,defaultLocalBusiness). - changedDev Toolbar: types without checks show *Not checked* instead of *Valid*; remote jobs (
TELECOMMUTE) no longer warn aboutjobLocation; Article fields are labelled recommended; the FAQ preview notes that Google retired FAQ rich results in May 2026;@typearrays are checked by their known type. - fixedAutoBreadcrumbSchema: decodes percent-encoded segments for names,
labelsandignoreSegments; URLs keep the encoded path. - fixedBuild check: finds JSON-LD in every valid attribute spelling (before,
type='application/ld+json'was skipped), checks every item of a top-level array and recognises@typearrays. - fixedGraph mode: deduplicates identical schemas with an
@typearray and keeps a custom@contexton its node instead of dropping it. - fixedHTML parsing: meta tag insertion and the build check use a WHATWG tokenizer instead of regular expressions. Markup inside comments, scripts, styles,
<title>,<textarea>or<template>is no longer taken for real tags. - fixedMeta tags:
robots,hreflangand the canonical URL come from the page schemas (e.g. a FAQPage next to a WebPage) even when an Article or Product is primary; robots directives are merged, so anoindexWebPage keeps itsnoindex. - fixedMeta tags: root-relative image and video URLs resolve against the origin when
siteUrlhas a sub-path, andog:urlfollows a canonical link the page sets itself. - fixedMeta tags:
video:durationand the reading time accept ISO 8601 durations with days and weeks; durations with years or months are left out. - fixedMeta tags: a page's own
og:imagesuppresses the schema image's size, type, alt andtwitter:image. - fixedMeta tags:
article:authorlists the authors' profile URLs, not their names; the name stays in<meta name="author">. - fixedProductSchema: shipping details and return policies on an offer win over the props and configured defaults, which only fill in; missing nested types (
MonetaryAmount,DefinedRegion, …) are added as in Google's merchant listing examples. - fixedValidation: an invalid date names the expected format;
validateRecommendedno longer asks forpriceandpriceCurrencywhenoffersorpriceRangeis set. - securityDev Toolbar: schema values are inserted as text instead of HTML, so CMS content cannot inject markup into the panel.
2.0.1
10 September 2026
- fixedValidation: strict prop validation ignores Astro's own attributes (
slot,data-astro-*), so<ArticleSchema slot="head" />works again.
2.0.0
10 September 2026
- breakingEventSchema: venue props depend on
attendanceMode. - breakingGraph mode: a page with schemas must render
<SchemaGraph />exactly once; it only marks where the@graphgoes. - breakingMiddleware: meta tags and the
@graphblock are produced after the page has rendered; HTML responses are buffered, not streamed, and tags the page defines win. - breakingOptions: validated strictly; a missing site URL throws.
- breakingSchema: no invented values:
LocalBusinessSchemaandOrganizationSchemaneed a name,JobPostingSchemaa hiring organisation andbaseSalary.unit;employmentType,operatingSystem,applicationCategoryandreviewCountare no longer defaulted. - breakingValidation: props are validated against the Zod schemas at render time; invalid or unknown props fail the build.
- addedBuild check: invalid JSON-LD in the build output fails the build.
- addedContributors: vitest suite with the Astro container API and end-to-end tests against a static build, the dev server and Node SSR.
- addedEventSchema:
onlineUrl, output asVirtualLocation(Online) orPlaceplusVirtualLocation(Mixed). - addedSitemap:
changefreqandpriorityhints on every component; conflicting hints fail the build. - securityJSON-LD: output is escaped so content cannot break out of the script block.
1.5.1
2 July 2026
- fixedGraph mode: graph store and meta tag deduplication are scoped to the page path, so schemas no longer leak across pages in static builds.
1.5.0
23 June 2026
- addedAstro: Astro 7 support (peer dependency
^5.0.0 || ^6.0.0 || ^7.0.0). - changedDependencies: updated to zod 4, schema-dts 2 and TypeScript 6.
1.4.1
12 June 2026
- addedEventSchema:
url,organizer,performer. - addedJobPostingSchema:
identifier,directApply,jobLocationType,applicantLocationRequirements;jobLocationoptional for remote jobs. - addedLocalBusinessSchema:
url,description,email,sameAs. - addedSoftwareAppSchema:
description,url. - addedVideoSchema:
publisher;contentUrlorembedUrlrequired.
1.4.0
2 June 2026
- addedRecipeSchema, VideoSchema: new components, with Dev Toolbar previews and build warnings.
1.3.0
2 June 2026
- addedAutoBreadcrumbSchema:
ignoreSegments,prependBreadcrumbs,appendBreadcrumbs. - addedBuild check:
validateRecommended()and thewarnOnMissingRecommendedoption. - addedDev Toolbar: rich result previews, copy JSON-LD, schema.org validator link.
- addedUtils:
calculateReadingTimein the./utilsexport. - addedValidation: Zod schemas for all components.
1.2.0
1 June 2026
- addedArticleSchema: more props.
- addedWebPageSchema: new component.
1.1.3
1 June 2026
- fixedMeta tags: generated only for primary schema types, without duplicates.
1.1.1
1 June 2026
- addedOptions:
siteName,locale,twitterSite,twitterCreator.
1.1.0
1 June 2026
- addedOptions:
generateMetagenerates meta tags from the schemas.
1.0.1
1 June 2026
- fixedPackaging: the
./componentsexport points to compiled JavaScript, fixing Rollup errors in consuming projects.
1.0.0
1 June 2026
- addedSchema: first release: components for Article, FAQ, Product, LocalBusiness, Event, Organization, WebSite, Breadcrumb, ProfilePage, CollectionPage, JobPosting and SoftwareApp.