Documentation Index
Fetch the complete documentation index at: https://mintlify.com/7span/vue-list/llms.txt
Use this file to discover all available pages before exploring further.
Why VueList?
VueList eliminates the repetitive boilerplate required to build list and table interfaces that fetch data from APIs. If you’ve ever built a user list, product catalog, or data table in Vue, you know the pain.The Problem: Repetitive Boilerplate
Every API-based list requires the same setup:State Management
API Request Logic
Watchers for Reactivity
URL Synchronization
State Persistence
The Solution: VueList
VueList reduces all that boilerplate to a simple component-based API:What VueList Handles for You
VueList manages all the complex state, API logic, and synchronization so you can focus on building features.
- State Management - All list state (page, search, filters, loading, etc.) is managed internally
- API Requests - Configure once in the plugin, use everywhere
- Reactive Updates - Changes to search, filters, or pagination automatically trigger new requests
- URL Synchronization - Page numbers automatically sync with URL query parameters
- State Persistence - User’s list state (page, filters, search) persists in localStorage
- Loading States - Separate states for initial load and subsequent loads
- Error Handling - Built-in error state management
- Debouncing - Search inputs are automatically debounced
- Edge Cases - Handles back button navigation, stale state cleanup, and more
Benefits
Write Less Code
Without VueList: 100-150 lines of setup code per list With VueList: 20-30 lines of declarative components That’s 80% less code to maintain, test, and debug.Consistency Across Lists
When you have 20+ lists in your application, VueList ensures they all behave consistently:- Same pagination behavior
- Same loading states
- Same error handling
- Same URL patterns
- Same state persistence
Better User Experience
- URL Sync: Users can bookmark or share filtered/paginated results
- State Persistence: Users return to the same page and filters they left
- Smart Loading: Different loading states for initial vs subsequent loads
- Optimized Requests: Automatic request deduplication and debouncing
Focus on What Matters
Instead of writing pagination logic for the 50th time, you can focus on:- Building unique features
- Designing better UIs
- Improving performance
- Solving business problems
When to Use VueList
Perfect For:
- Data Tables - User lists, product catalogs, order history
- Search Results - Any searchable/filterable content
- Admin Dashboards - CRUD interfaces with pagination
- Product Listings - E-commerce category pages
- Content Feeds - Blog posts, articles, news feeds
Not Ideal For:
- Static Lists - If your data doesn’t come from an API
- Real-time Feeds - WebSocket or SSE-based data streams
- Infinite Scroll Only - If you need true infinite scroll without load more button (though VueList supports load-more mode)
Architecture: Centralized Request Handler
One of VueList’s key features is the centralized request handler. You configure how to make API requests once during plugin installation:VueList component in your application uses this same request logic. Benefits:
- DRY: Configure once, use everywhere
- Consistency: All lists use the same API patterns
- Maintainability: Update API logic in one place
- Flexibility: Override per-component if needed
State Management Strategy
VueList includes an optional state manager that persists user preferences:Headless Architecture
VueList is headless - it provides the logic and state management but doesn’t dictate your UI:Real-World Impact
Time Savings
- Setup Time: 2 hours → 10 minutes per list
- Maintenance: Centralized logic means fewer bugs
- Onboarding: New developers understand lists immediately
Code Quality
- Testability: Test your request handler once, not 50 times
- Consistency: All lists follow the same patterns
- Readability: Declarative components are self-documenting
Next Steps
Ready to eliminate list boilerplate?Installation
Install VueList in your project
Quick Start
Build your first list in 5 minutes