coolsam/excel-import
A Laravel/PHP package for importing Excel files into your application. It offers a simple API for reading spreadsheets, mapping rows to models or arrays, and handling common import tasks with minimal configuration—useful for batch data loads and admin imports.
maatwebsite/excel: upload, column mapping, row validation, chunked persist, queued jobs, notifications. That is commodity work — roughly 200–400 lines per resource to build bespoke — so the decision it unlocks is to stop paying that tax per feature and spend engineering on business rules instead.filament-excel-import but described as "imports and exports," and v1.2.0's changelog mentions neither. Confirm which surfaces actually ship before we estimate any export work — export support materially changes the value case and may turn "CSV export for finance" into a separate feature rather than a config toggle.maatwebsite/excel rather than reimplementing PhpSpreadsheet, the real commitment is a thin adapter plus a well-maintained engine. Low lock-in, quick reversal.Consider it when:
maatwebsite/excel alone is the right call.maatwebsite/excel or native CSV streaming must remain reachable underneath.^1.2 in that case, since earlier versions don't declare compatibility.Look elsewhere when:
maatwebsite/excel directly. Adding Filament to justify this package is a bad trade.For executives: Our admin tooling runs on Filament, and this small community package wraps the industry-standard laravel-excel engine to give us spreadsheet import nearly out of the box. In practice it turns a recurring multi-week build — "ops needs to upload 5,000 customers / prices / inventory rows" — into a sprint-scale task, and lets us say yes to bulk-data requests currently sitting in the backlog. The strategic cost is near zero: it is a thin adapter, it locks us into nothing we cannot replace in days, and the work it saves is commodity engineering we would otherwise pay for repeatedly. v1.2.0 adds Laravel 12 support, so it will not hold up our framework upgrade. The caveat is maturity — it is unproven in the wild, with a single maintainer and no visible production adoption — so we adopt it behind an evaluation gate on one internal workflow, not as a house standard.
For engineering:
maatwebsite/excel.^1.2 on Laravel 12; otherwise it's a no-op. It says nothing about the Filament axis, which is the version boundary more likely to break us on a routine composer update.filament/filament, and maatwebsite/excel; and time-box a one-day spike on a boring internal import before we commit roadmap dates to it.How can I help you explore Laravel packages today?