Theme Standardization Through "Feature" Support

Apologies for the necro. I’ve been reading for something to kick my decision paralysis on how/where to define/structure some site/theme data and had a thought that connects a few different threads I’ve seen here and in github issues (re: standardizing themes, author metadata, testing themes, rating themes, providing a default theme…):

Instead of declaring and negotiating feature lists, it seems like Hugo could create the scaffolding for and accumulate feature/behavior tests that define, document, and check the configuration and behavior of sites and themes. Hugo’s theme site could present pass/warning/fail status for these tests, along with the status of more general theme tests discussed recently in https://discuss.gohugo.io/t/theme-quality-filter-for-best-practices-seo-optimization-etc/5854.

Running the same tests on your local site would output a machine-readable report that identifies when your site’s causing compatibility problems of its own. The theme site could have an in-browser compatibility checker where you paste this report to filter out incompatible themes.

It seems like this arrangement might better orient the various incentives and feedback loops at play:

  • Users get clear, consistent signals about theme features, behavior, and quality.
  • Users can identify local changes they need if they want to be able to readily switch themes.
  • Theme developers get a strong nudge towards developing better initial releases.
  • It gives users, developers, and the core Hugo community an active lever for continually proposing, discussing, and promoting better practices: develop/improve a test and send a pull request.
2 Likes