Skip to content

Why VueList?

In frontend projects, listing pages are everywhere - users, products, orders, you name it. And almost every time, you end up writing the same boilerplate:

  • page, perPage, filters, isLoading, data, error...
  • Watchers or methods to fetch data
  • Manual API calls
  • State resets when filters change
  • LocalStorage hacks to persist state

VueList eliminates this repetition


Instead of duplicating the same logic in every component, VueList provides an opinionated way to manage listing state, while staying completely UI-agnostic. That means:

  • No HTML, no rendering - you handle the UI, we handle the messy state and lifecycle.
  • Just define a requestHandler and let VueList manage when and how to call it.
  • Reacts to changes in page, filters, or params and automatically refetches data.
  • Built-in support for saving/restoring state via localStorage or APIs.

It's like a tiny state machine for listing pages - reusable, reactive, and fully headless.

Version 2.1.1