I have been reviewing Hugo themes to pick something for a non-blog site and it appeared to me that one can roughly classify all themes into the following categories:
blog-like one (Ghostwriter) or the two (Hyde) column
documentation themes (Alabaster)
bootstrap-like with top horizontal menu
landing page with centered elements (hello-friend)
graphically intensive themes
precursors (Paper, Classless)
Some themes (like kraiklyn) combine a few things.
These types kind of mix the structure/appearance and purpose, but they look like a viable way to classify themes and make a selection easier.
Two questions:
do you think this classification may be enhanced? something that helps a newcomer to navigate through the themes?
do you know any resources/charts that show some genealogy of the themes and their ports across platforms (Wordpress has thousands, Jekyll/Hugo just first hundreds)?
Great clue! I guess it is an optional part in theme.toml, but important one! I was thinking about parsing the repo of themes and making a dataset of theme properties, this should definitely be one of the features. Also thought following should be the features:
exampleSite/content folders
root file listing of exampleSite/content
date last updated
non-blank lines in config.toml (proxy for theme complexity)
[Original]name field
Perhaps there are some more useful parameters for the dataset.
Actually studying exampleSite/content looks like a good way to adopt a theme - as the subfolders in it are not the same.
Also hugoBasicExample has a strong inclination towards blogs, not really good now for testing / showing capabilities of non-blog sites, eg documentation.
My count is that there 303 themes listed, 236 have exampleSite\\content, but I do not know how to for sure distinguish proprietary from standard content.
By the end of the week I will add content for .product catalogues and portfolio websites.
There is already a /homepage/ headless bundle meant for Single Page Applications.
For complicated theme submissions such as Documentation, digital books, presentations etc we have a White List option so that such themes have the demo they need.
We do not promote a specific type for themes.
The HugoBasicExample used to be the way theme demos were published on the Hugo website before the exampleSite feature was added. It did have a blog structure but now it is becoming more modular.
There will also be documentation regarding how theme authors can enable/disable different sections of the HugoBasicExample and use translations.
This is very much a work in progress
They are all under Open Source licenses so their content should be CC or covered by the theme license.
With that said it has come to my attention that theme authors can be careless with the photographs they use in their themes. For example I know that at least 2 themes are using photos that they shouldn’t due to copyright.
We do not have the resources to really review each theme’s content before an update is pushed.
The enforcement of the HugoBasicExample fixes these issues at the expense of theme demos presentation (meaning that some of these existing 236 themes with a custom exampleSite now have content and menu items that throw 404s.
But these 404s are a small price to pay as the enforcement of the HugoBasicExample fixes some important issues.
Also you can see which themes are allowed to have their own content over here
FWIW, I have something like that, currently with the focus on filtering by tags, Hugo version, license, and github stars, sortable by date updated, stars, and name.