Ethereum-org-website: Improve site search functionality

Created on 7 Mar 2020  路  6Comments  路  Source: ethereum/ethereum-org-website

Is your feature request related to a problem? Please describe.

Currently the site search is fairly limited - it filters results by matching the query against page titles or sub-headers. It'd a good idea to add more advanced search functionality.

E.g. as raised in #802 by @tasdienes:

"I typed "challenges" into the search box and it didn't find anything, so I gave up."

Another e.g. from a community member:

When I search "geth" using the ethereum.org search bar (top right), it comes up empty. This might be "expected" since Geth isn't a heading? Regardless, seems worth adjusting if possible (e.g. switching to full text search or something).

Describe the solution you'd like

For searches that don't have a matching page title / subheader, we could allow the user to search (e.g. by pressing the enter key), which would take them to a search results page, ranking pages that include matching or related terms. We could probably use a free tool such as Algolia (free for open source projects), Google Custom Search, or something similar.

Describe alternatives you've considered

  • Break out existing site content into more targetted pages, e.g. https://ethereum.org/developers/#clients--running-your-own-node --> https://ethereum.org/clients where "Geth" is a H2 header that is searchable

Additional context

In Progress Design Feature

All 6 comments

TODO - check in w/ @evertonfraga to see if we could easily implement something similar to his work on blog.ethereum.org (https://github.com/ethereum/blog/pull/328)

Thanks @samajammin.

Later today I can take a look at the website code and specify the work needed here. Quick question: does that involve creating a dedicated page to search, or only the drop-down results/suggestions list?

@carlfairclough @jjmstark I'd be curious to hear your takes on this. I suspect if we were to implement a fuzzy page search (vs. just matching on titles/headers), we would want a search results page. Without one I fear the dropdown results may get unwieldy (but perhaps we could just list a subset, e.g. the top 5 results).

We're using Algolia search in the blog. The service is excellent and the search is insanely fast, with a decent API. Their Jekyll plugin automatically updates the search indexes on build time when there's new or updated content.

I can see that you are using Vuepress, so you can take advantage of their native Algolia integration.

Contact the devops team to get access!

One feature to consider - how can we have site search from SERPs? e.g.

https://share.getcloudapp.com/wbu0ZGJN

Submitted our site for indexing: https://docsearch.algolia.com/

Was this page helpful?
0 / 5 - 0 ratings

Related issues

samajammin picture samajammin  路  6Comments

mvelebit picture mvelebit  路  3Comments

samajammin picture samajammin  路  5Comments

filmblackeye picture filmblackeye  路  3Comments

ikc89 picture ikc89  路  4Comments