Supercharge Your Tables with Finder-Style List Views: Introducing Mantine ListViewTable Extension
Transform Data Presentation in Next.js & TypeScript Apps with Advanced Table Features, Powered by Mantine UI
If you’re building modern web applications with Next.js and TypeScript, you already know the importance of clean, interactive data presentation. Tables are a staple for displaying structured information, but what if you could offer your users a familiar, macOS Finder-style list view—complete with column reordering, resizing, sticky headers, and more? Enter the Mantine ListViewTable extension: an innovative component that takes your tables to the next level, all while staying true to the elegance and flexibility of the Mantine UI Library.
What is Mantine ListViewTable?
Mantine ListViewTable is a powerful extension built on top of the Mantine Table component. This extension brings a feature-rich, Finder-inspired list view to your React projects. Imagine the intuitive, drag-and-drop experience of macOS’s file manager—now available in your web app, with the full power of TypeScript and Next.js.
Why Choose ListViewTable?
Column Reordering & Resizing: Users can drag columns to reorder them and adjust widths, just like in native desktop apps.
Sticky Headers: Keep headers visible as you scroll, ensuring context is never lost—even in long tables.
Customizable Borders & Spacing: Fine-tune the appearance with table, row, and column borders, plus flexible spacing and alignment options.
Advanced States: Built-in support for loading and empty states offers a polished, user-friendly experience.
External Control: Easily integrate with your own state logic for sorting, column configuration, and more.
Vertical Variant: Display key-value pairs for detailed views—perfect for user profiles or configuration panels.
Seamless Integration with Mantine UI
If you’re already leveraging Mantine UI for its robust components and theming, ListViewTable fits right in. Installation is a breeze:
yarn add @gfazioli/mantine-list-view-table
Don’t forget to import the styles at your app’s root:
import '@gfazioli/mantine-list-view-table/styles.css';
And just like that, you’re ready to supercharge your tables with a drop-in component that feels native, fast, and fully customizable.
Real-World Usage Example
Here’s how easy it is to implement a dynamic, interactive list view:
import { ListViewTable } from '@gfazioli/mantine-list-view-table';
import { Badge, Text } from '@mantine/core';
import [data, columns] from './data';
function Demo() {
return (
<ListViewTable
columns={columns}
data={data}
rowKey="id"
onRowClick={(row) => console.log('Clicked:', row.name)}
/>
);
}
Want sticky headers? Just add the stickyHeader
prop. Need to handle custom sorting or persist column state? The component exposes flexible callbacks so you can sync with Redux, Zustand, or any state management solution.
Advanced Features for Modern Apps
Scroll Area Integration: Pair with Mantine’s
ScrollArea
for fixed-height, scrollable tables with sticky headers that always stay in view.Width Constraints: Set minimum, maximum, or fixed column widths to maintain perfect layouts.
Loading & Empty States: Show spinners or custom messages when data is loading or absent.
Vertical Variant: Switch to a key-value layout for detail-rich views—ideal for admin panels and dashboards.
Explore More on the Mantine Extensions HUB
ListViewTable is part of the growing ecosystem of Mantine Extensions. The HUB is your one-stop shop for discovering powerful, community-driven components that extend Mantine’s core capabilities—think calendars, onboarding tours, spinners, and more. Whether you’re building dashboards, SaaS tools, or data-heavy applications, the Extensions HUB offers a treasure trove of ready-to-use solutions.
Why Developers Love Mantine ListViewTable
Familiar UX: Users instantly recognize the Finder-style interface, reducing friction and boosting productivity.
TypeScript First: Get full type safety and autocompletion out of the box.
Next.js Friendly: Works seamlessly with server-side rendering and static generation.
Open Source & Community-Driven: Built and maintained by passionate developers—contributions welcome!
Get Started Today
Ready to give your tables a productivity boost? Head over to the Mantine ListViewTable documentation for detailed guides, live demos, and code examples. Don’t forget to explore the Mantine UI Library for even more UI inspiration, and check out the Mantine Extensions HUB for the latest community innovations.
Upgrade your data tables—your users (and your codebase) will thank you!