This article is the twenty-fourth and final edition of the Advent of Patterns series. In this series, running from December 1st to December 24th 2024, I will document one design or programming pattern I have noticed recently. Read more about this series..
When I am working on content management tasks, I often make reference to the list of all posts published on a website. To help me find posts, I often make a page where all posts are listed. This post can then be searched using the Control-F
or Command-F
search in the web browser. You can find an example on my website, where I have one page that lists all posts.
Listing all posts on a page is a minimal search experience. It only allows you to search by keyword or phrase that appears on the page, and does not allow for ordering. With that said, it is still a useful technique. Before my blog search engine was available, I would often go to the posts list and search for a term I remembered was in a post title. I could then copy the post URL to share it with others.
On-page search allows someone to check for the presence of something (did I write a post about term
?), and to find the record corresponding to that item. The record may contain a URL or other information.
When I was designing my Taylor Swift acronyms reference page, I made the intentional decision to put everything on one page in plain text, knowing that I could then use Control-F
to search the page. As an added bonus, using plain text meant that the page could later be indexed by my blog search engine.
When I am looking through long lists that are under 1,000 items in length, I prefer to be able to list all the options on a single page, rather than having to paginate through. This is because pagination involves having to go to additional pages and performing the same search again. When a list contains more than 1,000 items, or if each item is more than a few words, however, an application search is likely more appropriate. An application search can then implement more advanced features like filters, document ranking, and more.
With that said, adding all information on a page doesn’t scale well: past a few thousand items, a page becomes slow, leading to a poor user experience.
If you have a list of information you find yourself querying regularly, I recommend making a plain-text page that you can search.