When editing my site
I want Bookshop to warn me when references to components are out of date
So that changes to my component library don't unknowingly break existing implementations
In practice:
Provide something like a npx @bookshop/librarian --audit command, which:
Loads all front matter / tags from a site
Loads all bookshop TOML files
Finds any discrepancies
Provides helpful warnings like:
The instance of hero-title on about.html:32 doesn't include the field space-above
(space-above was specified in components/faq/faq.bookshop.toml)
The instance of faq on help/index.html:55 has an unspecified field theme
(theme was not found in components/faq/faq.bookshop.toml)
Which would then run in commit/push hooks of the site or component library.
Bookshop Librarian Revamp
In practice: Provide something like a
npx @bookshop/librarian --audit
command, which:hero-title
onabout.html:32
doesn't include the fieldspace-above
space-above
was specified incomponents/faq/faq.bookshop.toml
)faq
onhelp/index.html:55
has an unspecified fieldtheme
theme
was not found incomponents/faq/faq.bookshop.toml
)Which would then run in commit/push hooks of the site or component library.