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 Async Column

Filament Async Column Laravel Package

giacomomasseron/filament-async-column

Filament Async Column loads table column values asynchronously, so slow or expensive data (API calls, heavy queries, computed stats) no longer blocks your Filament tables from rendering. Cells show a placeholder and fill in when ready, keeping admin lists fast and responsive.

View on GitHub
Deep Wiki
Context7

A Filament v5 table column that loads its value asynchronously.

Frequently asked questions about Filament Async Column
How do I install filament-async-column in a Laravel app?
Install it with Composer using composer require giacomomasseron/filament-async-column. Then replace Column::make() with AsyncColumn::make() on the specific fields you want to resolve asynchronously and chain resolveUsing() with a closure for each record. The package is a presentation-layer extension for Filament v5 tables, so no queue, cache, or service boundary is required.
Which Filament versions does giacomomasseron/filament-async-column support?
The package targets Filament v5 table columns, and the overview positions it as a Filament v5 extension. The provided materials do not publish a support window for other Filament majors, so confirm the constraint in the package composer.json before planning an upgrade. Treat an unsupported major as a blocker rather than a managed risk.
How is AsyncColumn different from a normal Filament table column?
A normal Filament Column renders its value during the table render cycle, so a slow lookup can block the whole table. AsyncColumn::make() paints a placeholder first and fills the cell when the resolveUsing() callback returns for that record. It changes perceived performance and loading-state ownership, not the number of calls you make.
How do I change the loading placeholder in Filament Async Column?
v1.1.2 adds four CSS loader presets: skeleton as the default, plus spinner, dots, and bar. You select a preset with loader(), and loaderColor() controls its color through Filament's palette. If a column already defines custom loadingState() markup, that markup takes precedence over the loader preset.
Does filament-async-column support dark mode and reduced motion?
Yes. All four loader presets stop under prefers-reduced-motion, and loaderColor() resolves through Filament's palette, including FilamentColor::register() entries and dark mode. That covers a common accessibility and theming audit finding without custom CSS.
How often does resolveUsing() run in Filament Async Column?
The provided materials do not document whether resolveUsing() fires once per page load or on every sort, filter, search, pagination, or Livewire poll. That re-render amplification is the key unknown to measure on a realistic table before rollout. Instrument the callback and count invocations per interaction, especially against rate-limited APIs.
Does filament-async-column cache or batch async column values?
No. The package is a presentation-layer column extension, not a queue, cache, or batching layer. A 25-row page can still produce 25 callback executions against a remote or heavy data source. Caching, deduplication, and concurrency limiting remain your responsibility.
What happens when resolveUsing() fails or times out?
Error and timeout behavior is not documented; the materials describe only the happy path. Do not assume a bounded error state, because an indefinite skeleton after a failed call is worse than no async column for support tickets. Wrap resolveUsing() with your own try/catch and fallback, and test failure cases explicitly.
Will filament-async-column break tables that already use loadingState() markup?
No. Release notes state backward compatibility: loadingState() retains precedence, and columns that use neither loader() nor loaderColor() render the same skeleton as v1.1.1. The v1.1.2 bump is additive, so the dependency can ride a routine maintenance window while loader adoption stays a separate decision.
Is filament-async-column safe for production Laravel admin panels?
It is a small MIT-licensed package with a narrow surface, and v1.1.1 shows hygiene such as SECURITY.md, Dependabot, and a trimmed dist. The main risk is bus factor: a single maintainer, around 10 stars, and 0 dependents, not code quality. Test coverage and CI posture are not described in the provided materials, so verify them before using it in client-facing admin panels.
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.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core