TableKit

Saved views and power tools for Filament tables

Let your users save the state of a table as a named view and open it again in one click. Free and open source, MIT licensed.

$ composer require tablekit/filament-tablekit
  • Saved views
  • Presets
  • View manager
  • Multi-sort
  • Quick filters
  • Column order

Works with Filament 3, 4 and 5

See it in action

A bar above the table shows each user's favorite views. One click puts the table back the way they saved it.

TableKit in a Filament Orders table: a favorites bar of saved views (All orders, Needs attention, High value, Top accounts, Save view) above the table, with sort, filter and search controls.

77 seconds, with sound. Watch on YouTube.

What you get

Everything is built for Filament tables and needs no theme or CSS step.

  • Saved views

    Save filters, search, sort, columns and grouping under a name. Open them again in one click.

  • Preset views

    Define ready-made views in code, with an optional hidden query, a badge and a tooltip.

  • View manager

    Open, favorite, reorder, edit and delete views from one list, and mark views as default.

  • Default view

    Each user can pick one start view per table. You can set a default in code too.

  • Multi-sort

    Sort by several columns and give each column a priority.

  • Quick filters

    Clickable filter chips. Favorite filters stay visible even when they are not active.

  • Column order

    The order from Filament's column manager is saved in views and presets.

  • Color and icon pickers

    Pick from about 120 icons and 24 colors for your views.

  • RTL and translations

    English and Arabic are included, and the interface supports right-to-left layouts.

  • Multi-tenancy

    Views are scoped by user, table and tenant. Users never see each other's views.

  • Dark mode

    The pickers and the bar have light and dark styles built in. No theme or CSS step is needed.

  • Simple setup

    Add one trait to a list page, a relation manager or a table widget. That is all.

Works with Filament 3, 4 and 5

TableKit has one version for each Filament version. Composer picks the right one from the Filament you have installed, so the plain composer require is enough. All versions need PHP 8.2 or newer.

FilamentLivewireTableKitBranchLaravelDocs
Filament 54^5.0main11.28+, 12, 13Filament 5 docs
Filament 43^4.0filament-v411.28+, 12, 13Filament 4 docs
Filament 33^3.0filament-v311.28+, 12Filament 3 docs

Install in three steps

You need an existing Filament panel.

  1. Install the package

    composer require tablekit/filament-tablekit
  2. Run the migrations

    They load by themselves.

    php artisan migrate
  3. Add the trait to a list page

    Works on list pages, relation managers and table widgets. The bar with Default and Save view appears above the table.

    use TableKit\Concerns\HasTableKit;
    
    class ListOrders extends ListRecords
    {
        use HasTableKit;
    }

Read the installation guide Add your first preset

Security and privacy

Read these before you ship. The details are in the database guide and the presets guide.

  • A preset's hidden query is a filter, not access control. Users can drop it at any time. Put real rules in your resource query, policies or global scopes.
  • A view stores the search text and filter values the user typed. This can be personal data. Views are not deleted with the user, so delete them when you delete the account.
  • The server checks ownership on every action. View ids and preset keys that come from the browser are checked again on the server.
  • Views are scoped by user type, user id, tenant and table. Users never see each other's views.