Filterable Hugo Themes

Hello!

I am loving Hugo and was looking for a way to quickly filter themes by tags and license. When I couldn’t find one, I decided to write one, and so PFHT (PointyFar’s Filterable Hugo Themes) was born. :tada:

PFHT

It is very much a WIP, so forgive the mess. I would appreciate any and all feedback!

(I am unsure whether this falls under Announcements, Tips & Tricks or Uncategorized. Apologies if I ended up choosing the wrong category.)

8 Likes

cool!

  • In FF (linux) the scrollbars are missing. In Chrome they are shown.
  • Maybe include the last update date (from themes git repo) => maintained indicator
  • Maybe include the count of stars / forks (from themes git repo) => popularity indicator
  • Show your list last update date

How is the planned update process (pull from theme git repos)? If not fully automated => your list may loose sync

I’m still going through your JS, but if you have time it would be nice if you could put this into a digestible format for others to add to their sites for something like a blog post filter.

Fixed - thanks!

As for the other points, that is the general direction, I just have to learn how to do it first!

I actually have used it for this as well! I’ll clean it up a bit and put it in its own repo so it’s easier to reuse.

1 Like

Any luck with this? I’m trying to do this right now (filter blog posts, etc.)

I do have a rough version up here: https://github.com/pointyfar/hugo-tags-filter
and demo here: https://pointy.netlify.com/filterdemo/

Still needs some cleaning up and better documentation, which is why I haven’t posted about it yet, but you are welcome to give it a try :slight_smile:

2 Likes

@pointyfar just wanted to say this was really useful. Thanks for this, even all these years later :slight_smile:
I got a first round implemented at sheldonhull.com/blog which was really cool. Even if I switch up things in the future this was a great example of a demo site that documented the process as it showed the results.

Hi @sheldonhull , I couldn’t find your code there, could you please give a more precise pointer?