Auto Search,

I think people now expects search queries entered to populate as you type.

There are exceptions; Google being a notable one - but most apps have some kind of auto-search.

One of the search criteria on my product hits a 3rd party service (running elastic), and I don't want to spam their server with a query every time the user hits a key.

So, instead, I have a timer set up so that when a key is pressed, we wait 500 ms before doing the query. If the user hits another key inside those 500 ms, we reset the timer.

It's just a small trick to avoid hammering the server with queries that will be invalidated by the next key-press.

Naturally, this makes the search-ui feel a little sluggish vs a client-side filter that is instantaneous (almost) and can be triggered on every keypress.