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 Import Laravel Package

romansulzhyk/filament-import

A Filament plugin for importing records from CSV and Excel files into Eloquent models, with configurable columns, validation, and chunked processing for reliable admin-side data imports.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy on admin-side data import. This package covers the "let ops upload a spreadsheet" surface — file picking, type acceptance, delimiter/encoding detection, row mapping — so the team can spend engineering time on validation rules and business logic instead of parsing plumbing. The v1.1.1 release strengthens the case by making the default path CSV, which is what most real customer exports actually are.
  • Lowering the activation/migration barrier. Import is usually the gate on onboarding a new account or migrating off a competitor. CSV-first positioning (delimiter and encoding detection built in, no queue required) shortens the path from "customer has a messy export" to "data is in the product," which is a directly measurable funnel step worth instrumenting (time-to-first-import, import failure rate, support tickets per import).
  • Support-cost decisions. ->acceptedFileTypes([...]) with the documented escape hatch ([...ExcelImportAction::ACCEPTED_FILE_TYPES, 'application/octet-stream']) targets a specific, recurring failure mode: files that are genuinely CSV but get labelled differently by an OS, browser, or storage layer. That is a ticket class, not a feature. Being able to configure it rather than patch it is a lever on support volume.
  • Roadmap scoping for the import surface. The release explicitly calls out "no queue." That draws a clear line: this is a synchronous, request-bound import. The product decision that follows is whether large-file / background imports are in scope — if they are, that is a separate workstream and this package is one component, not the whole answer.
  • Scope expansion to adjacent formats. .tsv support plus content/extension-based detection (extension-less files read as CSV only when the first kilobyte looks like text) widens the set of customer files we can accept without a bespoke parser — useful when deciding whether to promise "we accept your export as-is" in sales or docs.
  • Use cases enabled: one-off data migrations, bulk price/inventory/catalogue updates, user/contact list seeding, tenant onboarding, internal admin tooling. All read-heavy, human-initiated, moderate row counts.

When to Consider This Package

Consider it when:

  • Import lives inside a Filament admin panel and the audience is internal staff or trained operators, not end users on a public form.
  • Import payloads are CSV/TSV or modest Excel files that complete in a normal HTTP request — think thousands, not millions, of rows.
  • You need forgiving file acceptance: mixed encodings, delimiter variants, .txt or extension-less exports, files whose MIME type is mislabelled.
  • You want configurable, not hardcoded, type acceptance — v1.1.1 makes the accepted set replaceable, which matters in regulated or locked-down environments with their own file-handling policy.
  • You benefit from AI-assisted development affordances — the README and Boost skill being updated together means coding agents get current guidance, which lowers the cost of the first integration.

Look elsewhere, or plan to build around it, when:

  • You need asynchronous or queued imports with progress reporting and resumability. The package's own positioning says no queue; don't adopt it expecting that to arrive as a config flag.
  • You need strict, schema-first validation with dry-run diffing as a first-class product feature. You will likely be layering your own validation and preview UI on top.
  • Your files are large, binary-adjacent, or non-tabular (images, PDFs, nested archives). The release notes are clear that accepted types never make a binary file importable — the reader decides from contents and extension. That is the right safety property, but it also means this is not a general-purpose file intake tool.
  • You require vendor stability guarantees — evaluate changelog cadence and semver discipline; a 1.1.1 that changes default file handling behaviour is worth reading carefully before pinning.
  • You are not on Filament, or you need a framework-agnostic import pipeline shared across services.

How to Pitch It (Stakeholders)

To executives: We can ship customer-facing data import without building a parser from scratch. The latest release makes the common case — someone exports a CSV from another system and uploads it — work by default, including the awkward files that used to generate support tickets: wrong MIME labels, TSV exports, files with odd or missing extensions. The commercial value is faster customer onboarding and fewer import-related escalations, at the cost of one dependency we configure rather than maintain.

To engineering: Adopt it as the file-handling and row-reading layer inside Filament admin panels. v1.1.1 changes the accepted-type surface: ->acceptedFileTypes([...]) replaces the defaults, so use [...ExcelImportAction::ACCEPTED_FILE_TYPES, 'application/octet-stream'] when extending rather than overwriting. Detection is content- and extension-based, not MIME-based, so accepting a type does not open a hole for binary files. TSV is now read as tab-separated CSV, and extension-less files are treated as CSV only if the first kilobyte reads as text. Treat imports as synchronous and request-bound — anything large or long-running needs a queue of our own design, so size limits and timeouts are our responsibility. Pin the version and review future minor releases for default-behaviour changes of this kind.

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.
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums