Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Filament Table Repeater

Filament Table Repeater Laravel Package

icetalker/filament-table-repeater

Filament Table Repeater extends Filament's Repeater form component to display repeatable fields in a table layout. Install via Composer, then use TableRepeater::make() with schema, reorderable, cloneable, collapsible, and min/max items support.

View on GitHub
Deep Wiki
Context7

icetalker/filament-table-repeater adds a table-layout Repeater component to Filament forms. It extends Filament’s native Repeater, letting you manage repeatable rows in a compact table while retaining familiar form fields and relationships.

  • Table-based repeater rows for cleaner data entry
  • Supports relationships, reordering, and cloning
  • Configurable min/max items, collapsible rows, and colStyles
  • Uses most existing Repeater methods
  • Publishable views for easy customization
Frequently asked questions about Filament Table Repeater
What is icetalker/filament-table-repeater used for?
It is a Filament form component that extends Filament's native Repeater but renders repeatable fields in a table layout instead of the default stacked rows. It fits structured multi-row data entry such as order lines, inventory items, or configuration rows inside Laravel admin panels built with Filament. Because it extends Repeater, most of the Repeater API and workflow stays familiar.
How do I install filament-table-repeater via Composer?
Run composer require icetalker/filament-table-repeater in your Laravel project. Optionally publish the views with php artisan vendor:publish --tag="filament-table-repeater" if you want to customize the Blade templates. Then import Icetalker\FilamentTableRepeater\Forms\Components\TableRepeater in your form schema and use it like a normal Repeater.
Which Filament and Laravel versions does filament-table-repeater support?
The package is built on Filament v3.x's Repeater, with Laravel 10/11 and PHP 8.1+ inferred from Filament's own support matrix. Always check the package composer.json constraints before installing. Filament v4 compatibility is not documented, so review the GitHub repository and changelog before upgrading Filament majors.
How do I use TableRepeater with a hasMany relationship?
Call TableRepeater::make('items')->relationship('items')->schema([...]) inside your form, just like a standard Repeater. Define each column as a form component in the schema, such as TextInput::make('product'). If row order matters, model it explicitly with a sort column rather than relying only on array index.
Which Repeater methods are not supported by TableRepeater?
TableRepeater supports most Repeater methods but not inset(), grid(), or columns(), because the table layout controls those aspects. If you need a grid or column-based row layout, use a standard Repeater instead or test carefully. Other Repeater options like reorderable(), cloneable(), and collapsible() work as expected.
How do I customize column cell styles with colStyles in TableRepeater?
Pass an array of component names to colStyles, mapping each field to the styles you want applied to its table cell. The README documents this under the 'Other methods' section. For deeper visual changes, publish the package views and edit the Blade templates directly.
How do I enforce minItems and maxItems limits on table rows?
Chain ->minItems(3) and ->maxItems(5) on TableRepeater exactly as you would on a Repeater; the methods carry over. Filament handles the validation messages and prevents submitting outside those limits. For business rules such as unique combinations of columns, add custom validation on top.
Is the row reordering bug fixed and which version should I pin?
A row-reordering defect was fixed in v2.0.4, so pin v2.0.4 or later and avoid earlier 2.x builds where drag-and-drop order could be persisted incorrectly. If your data's display order matters, audit existing records for bad ordering. Re-test reordering on every patch bump, since the changelog note is terse and the change scope is unclear.
Does TableRepeater perform well with large numbers of rows and how should I test it?
The table layout renders every row, so responsiveness can degrade with large datasets; test with realistic counts such as 100 or more rows. Load-test the reordering interaction specifically, since v2.0.4 touches that path. If needed, split data into related models or limit row counts with maxItems.
What are the alternatives to filament-table-repeater and is it maintained for Filament v4?
Inside Filament, the closest alternative is the standard Repeater with a customized layout; outside Filament, a custom Livewire/Tailwind or Blade table component gives full control. The package is a small open-source project, so check GitHub activity and open issues before adopting it. Filament v4+ support is not documented, so plan a fallback if you upgrade Filament.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections