PHPackages                             lupennat/import-export-card - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. lupennat/import-export-card

AbandonedArchivedLibrary[Utility &amp; Helpers](/categories/utility)

lupennat/import-export-card
===========================

Laravel Nova - Import Export Card

v1.0.0(3y ago)023MITPHPPHP ^7.4|^8.0

Since May 23Pushed 3y ago2 watchersCompare

[ Source](https://github.com/Lupennat/import-export-card)[ Packagist](https://packagist.org/packages/lupennat/import-export-card)[ RSS](/packages/lupennat-import-export-card/feed)WikiDiscussions main Synced yesterday

READMEChangelogDependencies (4)Versions (2)Used By (0)

1. [Requirements](#Requirements)
2. [Installation](#Installation)
3. [Usage](#Usage)
4. [Customization](#customization)

Requirements
------------

[](#requirements)

- `php: ^7.4 | ^8`
- `laravel/nova: ^4`

Installation
------------

[](#installation)

```
composer require lupennat/import-export-card

```

Usage
-----

[](#usage)

Next up, you must register the card(s). This is typically done in the card method of the corresponding resource or the NovaServiceProvider.

```
// in  app/Nova/.php

    public function cards(NovaRequest $request)
    {
        return [
            new \Lupennat\ImportExportCard\ImportCard(self::class),
            (new \Lupennat\ImportExportCard\DownloadImportSampleCard(asset('import-samples/file.csv')))
                ->withHelp('By importing you will insert a new row or update duplicate entries.'),
            new \Lupennat\ImportExportCard\ExportCard(self::class),
        ];
    }
```

Customization
-------------

[](#customization)

To customize the import/export process create a new importer/exporter class. The importer class is basically just an [import implementation of the laravel-excel package](https://docs.laravel-excel.com/3.1/imports/). The exporter class is basically just an [export implementation of the laravel-excel package](https://docs.laravel-excel.com/3.1/exports/). The easiest way to get started is to extend `Lupennat\ImportExportCard\BasicImporter` or `Lupennat\ImportExportCard\BasicExporter` and overwrite the different methods. During the import process you may throw an exception of the type `Lupennat\ImportExportCard\ImportException` with an error message visible for the user. You may also add a `message(): String` method to customize the success message.

The custom importer/exporter classes can be registered on global or resource basis.

```
// app/Nova/User.php

class User extends Resource
{

    public static $importer = CustomImporter::class;

    public static $exporter = CustomExporter::class;

    // ...
}
```

---

Credits
=======

[](#credits)

ImportExport Card is based on original [Nova Import Card](https://github.com/Sparclex/nova-import-card).

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1137d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6160171?v=4)[Claudio Pennati](/maintainers/lupennat)[@Lupennat](https://github.com/Lupennat)

---

Top Contributors

[![Lupennat](https://avatars.githubusercontent.com/u/6160171?v=4)](https://github.com/Lupennat "Lupennat (2 commits)")

---

Tags

laravelnova

###  Code Quality

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/lupennat-import-export-card/health.svg)

```
[![Health](https://phpackages.com/badges/lupennat-import-export-card/health.svg)](https://phpackages.com/packages/lupennat-import-export-card)
```

###  Alternatives

[optimistdigital/nova-sortable

This Laravel Nova package allows you to reorder models in a Nova resource's index view using drag &amp; drop.

2852.1M6](/packages/optimistdigital-nova-sortable)[outl1ne/nova-sortable

This Laravel Nova package allows you to reorder models in a Nova resource's index view using drag &amp; drop.

2862.1M9](/packages/outl1ne-nova-sortable)[eminiarts/nova-tabs

Laravel Nova - Tabs.

4694.3M20](/packages/eminiarts-nova-tabs)[markwalet/nova-modal-response

A Laravel Nova asset for Modal responses on an action.

17878.9k](/packages/markwalet-nova-modal-response)[advoor/nova-editor-js

A Laravel Nova field bringing EditorJs magic to Nova.

92219.3k3](/packages/advoor-nova-editor-js)[sbine/route-viewer

A Laravel Nova tool to view your registered routes.

58249.9k](/packages/sbine-route-viewer)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
