mantine-datatable-extended
v0.4.6
Published
An extension library for Mantine DataTable, providing powerful and easy-to-use features for building data tables in React applications.
Readme
Mantine DataTable Extended
A compound component library for Mantine DataTable, providing powerful and easy-to-use features for building data tables in React applications.
Why this library?
Production-ready with easy-to-use concepts, including leverage some limitations of the original library:
- Column toggling: Now supports multiple columns and dedicated component for managing column visibility
- Multi-column sorting: Now supports multiple columns and dedicated component for managing column sorting
- Search and Filter: Standardized and easy-to-use with dedicated component for managing column search and filter
- Pagination: Separated from table footer, no more blocked by async data loading
- Server-side: Easy setup for server-side rendering, data prefetching, query building
Key Features
Supported Frameworks
- Next.js (use with Nuqs)
- Tanstack Start (use with Tanstack Router)
🎯 Standardized Components
- MDESearch: Search with multi-column selection
- MDEFilter: Filter data with various filter types (text, number, date, select, range...)
- MDESortList: Sort by multiple columns simultaneously
- MDEColumnsToggle: Show/hide columns
- MDEPagination: Flexible pagination that can be placed anywhere
🔗 URL State Management
- Query states are stored in URL
- Shareable links - share URLs with filters/search/sort applied
- SEO-friendly with SSR support
- Easy integration with server-side rendering
🚀 Server-Side Integration
- Server-side data prefetching
- Hybrid fetching with Tanstack Query
- Type-safe with TypeScript
🎨 Developer Experience
- Full TypeScript with type inference
- Consistent and easy-to-use API
- Customizable i18n for all text
- Flexible layout - arrange components as needed
Installation
pnpm add mantine-datatable-extendedPeer Dependencies:
@dnd-kit/react>= 0.3@mantine/core>= 8.3@mantine/dates>= 8.3@mantine/hooks>= 8.3@tabler/icons-react>= 3.35clsx>= 2dayjs>= 1.11mantine-datatable>= 8.3react>= 19react-dom>= 19zod>= 4.1nuqs>= 2.8tanstack-router>= 1.43
Note:
- If you use Next.js, you need to install
nuqs - If you use Tanstack Start, you need to install
tanstack-router
Documentation
For detailed documentation, examples, and API reference, please visit the documentation website.
Important Note
This is an opinionated library built with many personal opinions to reduce customization time and achieve immediate results. Use it if you really need these features.
You can still use this library alongside the original Mantine DataTable without any conflicts.
License
MIT
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
