golang / gddo

Go Doc Dot Org
https://godoc.org
BSD 3-Clause "New" or "Revised" License
1.1k stars 265 forks source link

Proposal for Search Result Extended Filtering #318

Open carlisia opened 9 years ago

carlisia commented 9 years ago

Overview

We propose to add an option to perform extended filtering at search time as well as post search. This proposal is dependent on issue #317 and #319.

Extended Filtering

Examples: by author, by license type, by last commit date, by license, by various rankings.

Can be applied in two cases:

  1. Query specification: Ability to select filtering at search time. Examples:
    • All packages with a tag of networking. Packages that don’t have the tag networking would not show in the results.
    • All packages with a tag of database and commit date > 2014.
  2. Organizing and post filtering search results. Examples:
    • Original search: all packages with a tag of networking.
    • Search result organized by: year, author, tags
    • Quantity may be displayed next to each individual value for the organization attributes. Example: 2015 (10), 2014 (5).

References: http://www.creativebloq.com/navigation/design-better-faceted-navigation-your-websites-41411437 https://www.searchify.com/documentation/tutorial-faceting http://studygolang.com/articles/2537 http://www.blevesearch.com/docs/Result-Faceting/ http://www.nngroup.com/articles/filters-vs-facets/ https://en.wikipedia.org/wiki/Faceted_search


Contributors to this proposal

@carlisia @gdey @rafaeljusto

adg commented 9 years ago

It seems that this proposal is blocked by #317, the proposal to introduce tags.

What are the 'year' and 'author' fields?

rafaeljusto commented 9 years ago

@adg The year is a reference of the last commit date of the package, we thought about retrieving the date from releases to use it as reference, but not all projects use release tags. And the author could be any commiter of the package retrieved from the SCM.