Skip to end of banner
Go to start of banner

Live Search

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 11 Next »

Lead: Shani Laendler (Unlicensed) ONGOING

Description

Live search (aka "active search", “incremental search” or “search-as-you-type”) is a search type in which each character that the user enters or deletes runs the search query. This type is usually suitable for small-medium databases

Usage and Behaviour

General Guidelines

Internal Logic

Search logic

2 search approaches may be applied (should be considered according to the specific need):

  • “Type-ahead”: all results will start with the typed string. For example:

     

  • “Contains”: the search string may appear within a result.

     

Select the appropriate approach according to:

  • The users' knowledge and expected behaviour: do they know the full name of the item? how familiar they are with the list terminology and content?

  • The list content and design: does it include complex items (e.g. agents names?)? does it have a complex design (e.g. a combination of numbers and strings)?

The more complex the list is, and the less knowledge the user have, tend to choose the “contain” approach to provide more flexibility to the user.

Results Presentation

  • The searched string will be highlighted within the text.

  • The results are displayed in the list area according to the existing sort method.

  • In case the list area is arranged in an hierarchical view the search results may be presented in either the same hierarchical view or as a simple list. See 'Best Practices' section for guidelines on selecting the appropriate approach. Example for hierarchical view in the search results:

  • In larger or more complex result sets, present the number of results in a prominent area. Try adding that in any case when possible:

Results Loading Time

The system should mitigate long loading times.

  • Less than 0.1 second: no loader is needed.

  • 0.1-5 second:

    • Option 1: loading spinner with the text "Searching <Categories>..."

    • Option 2: loader within the field and list area with/out a placeholder for the results (consider Asaf’s use cases where there are several loading areas in the results area, see google example. consider also very long search fields where the load sign may be to far and unnoticeable)

  • More than 5 seconds: this loading time is too long for “Live Search”. Use Manual Search instead.

Suggestions (Optional)

When focusing on an empty search field, a list of suggestions may be displayed to aid the user conduct a quick search.

List definitions:

  • The list will include up to 8 items

  • The list will include recent searches and/or popular/trending searches.

    • Recent item are items that the specific user searched for in the past. They will be presented only after conducting at list one search and will include the most recent searches only.

    • Popular items are items that are being searched by many users in many occasions

    • Trending item are items that are being searched by many users in many occasions, on a recent defined time frame.

    • The number of recent and popular/trending items should be equal. If there’s not enough data to provide an equal amount of both types the list may be divided unequally.

  • Recent items will be placed above popular/trending items

  • Each item will be accompanied with an icon, indicating the type of suggestion (recent or popular)

Use the suggestion list only if the user is expected to search for previously searched queries or popular/trending queries.

Search with Spaces

  • Spaces are included in the search string. For example, when searching “repeated c” the result “repeated calls” may be found.

  • When searching on lists of names (e.g. employees, agents), the space may be addressed as a separator between 2 distinct searches. For example, when searching “sh kl” the employee “shiri Klein” may be found.

Interaction

Step

Visual Example

Description

Initial state

Hint text in grey

Hover over the search field

Boarder colour changes

Click on the text field

  • Search in focus

  • Hint text presented

  • Text mark is flickering

  • Suggestions: recent and/or popular queries are presented (optional)

Enter first letter

  • Hint text hidden

  • Suggestions are hidden

  • The list is filtered

  • Searched query is highlighted within the list

  • Clear all "x" is presented.

Enter next letter/s

The list is filtered to show relevant results

Click on item in the list

Focus is moved away from the search field

Clear all

Click on the “x”: (1) clears all characters (2) focus on the text field.

The "x" disappears when the text is cleared (both manually or using the "x" button)

Validations and errors

No results found

  • The results area will clearly state no results were found

  • The text will say "no <items> were found" (e.g. no categories were found, no employees were found).

Best Practice

  • Automatic focus: use auto-focus on the search field to aid the user in conducting a fast search (and reduce clicks). Make sure to use it under these conditions:

    • The list is the only/main component presented in the area or section (e.g. in a filter panel or in a modal window)

    • The list is presented upon request (e.g. click to open filter panel, click to open modal window)

  • Display results in an hierarchical tree view vs. simple list: the results may be presented in both list types. Answer these questions to select the most appropriate type:

    • Is the search expected to produce a single or multiple results? (if single than list is probably good enough)

    • May several results have a similar name? (if yes, tend to choose a tree view)

    • What will help to differentiate between items with similar name? (will it be the root?)

    • Will the root be searched by itself?

    • In case the results are presented in tree view, all roots will be auto-expanded to present the searched item. 

  • Use when:

    • The database is small-medium and the results can be filtered immediately (no need to retrieve the data from the back-end)

    • The results area is located below and near the search field

  • Don’t use when:

Future Version (TBD)

  • Search on a simple list with multi-select

  • Search on a tree view with multi-select

  • No labels