- How do I install Actionable Column in a Laravel Filament app?
- Run composer require shreejan/actionable-column, then swap a TextColumn for Shreejan\ActionableColumn\Tables\Columns\ActionableColumn in your table schema. There is no service provider, config file, route, or migration to publish, so setup is one Composer command plus a per-column change. The package declares a ^4.0|^5.0 Filament constraint in its composer.json.
- Does Actionable Column support both Filament v4 and v5?
- Yes. The composer constraint is ^4.0|^5.0 and the README explicitly claims compatibility with Filament v4 and v5, so a planned v4 to v5 upgrade is neither blocked nor forced. Because the plugin leans on public column and Action APIs, dual support is plausible, but v5-specific behavior has not been exercised by a large user base. Verify it against your exact Filament minor version, not just the major.
- How do I attach an edit, delete, or approve action to a Filament table column?
- Pass any native Filament Action to ->tapAction(Action::make('changeStatus')->...) and the column renders it as a connected button next to the value. Authorization, modal schemas, fillForm closures, tooltips, and notifications all stay inside the Action you supply, so the package does not create a parallel permission or audit model. It only changes where the action is triggered, not what the action is allowed to do.
- How do I show a "+ Add" button when the column value is empty?
- The column includes an empty-state affordance that renders a "+ Add" button for records with no value. Tapping it fires the same Action attached via tapAction(), so you can open a modal form to set the missing data, and actionLabel() controls the label. No extra column or Blade override is needed.
- Can I make the whole table cell clickable instead of only the icon?
- Yes, call ->clickableColumn() and the entire cell becomes the tap target for the action. Without it, only the connected action button is clickable. You can also suppress the button entirely with showActionIcon() while keeping the cell clickable.
- How do I set the badge color and the action icon color independently?
- Use ->color('success') for the badge or text and ->actionIconColor('warning') for the icon, since they are configured separately. ->actionIcon() accepts a Heroicon enum or a plain string, and ->actionIconSize() adjusts the button size. Enable ->badge() for badge mode, or omit it to render simple text with a side-by-side action button.
- How do I customize the CSS styles of Actionable Column?
- Create resources/css/actionable-column-custom.css or point the ACTIONABLE_COLUMN_CUSTOM_CSS_PATH environment variable at your own file. The package loads its default stylesheet first and your overrides afterwards, an ordering added in v1.0.1 after published CSS was being overwritten during composer install and update. Confirm that load order holds under your Vite, published-asset, or CDN pipeline.
- Is this package safe and maintained enough for production use?
- It is a small, single-maintainer package with around sixteen stars, zero dependents, and a short release history from v1.0.0 to v1.1.1, so treat it as a reviewed snippet you are importing rather than infrastructure you depend on. There is no SLA, no documented support process, and no security-review posture beyond a contact email, which will fail most maintained-dependency gates. A cheap mitigation is to pin a specific tag, or fork and vendor the column class into app/ so composer update cannot silently change behavior.
- Can a single column have multiple tap actions or nested menus?
- No. Each column supports exactly one tap action, and there is no drag-and-drop, nested menu, multi-field inline editing, or keyboard-first grid navigation. If your roadmap points at any of those, this package is a dead end and you should use row actions or inline-editable columns instead.
- How is Actionable Column different from Filament row actions or inline-editable columns?
- Filament already offers row actions, toggle columns, and inline-editable columns, so this plugin adds a second pattern for the same state change. Actionable Column is deliberately narrow: a badge or text value plus one connected action, which is lighter than a full inline editor but overlaps heavily with row actions. Pick one pattern per workflow so the operator mental model stays consistent and support has only one thing to learn.