Paginating regardless of model is
Paginating regardless of model is exhausting for the end user. Typically they’ll look at the first few results, maybe load a few more, and then switch to filtering. If users are paginating too much, it’s because the sort isn’t as relevant as desired or filtering is limited.
This is a very opinionated take, but pagination is a fail case for me, so I’m perfectly happy simplifying it with an infinite scroll controller and focusing my efforts on helping them find the thing they’re looking for quickly.
One way you can do this is loading all the relevant customer/company data in a field for search, creating a search index for that, and exposing a search field to the end user. This way, whenever they’re trying to find someone phone number, name, email, etc… they’ll return in the search results.
I will say that Convex doesn’t do as great of a job at being a search engine, but this method will handle 90% of use cases just fine. Anything more complex and you’ll have to load in a proper search engine like Elastic.
1 Reply
yeah - I totally agree with this, but with the caveat of - well you have to know how to filter (ideally index) the data.
If you have a good sense of what your user is looking for, indexing and/or search indexing on that is great.
Elastic is a great option for reducing the space of what you have to show in the UI
That being said - if you have a lot of data, you have to do something to reduce that data, whether it's indexing, search indexing, elastic, or paginating.