ryangjchandler/filament-data-studio

Zero configuration CSV exports for your Filament resources.

v1.0.0-beta2 2023-12-08 21:33 UTC

README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Installation

You can install the package via Composer:

composer require ryangjchandler/filament-data-studio

Once the package is installed, us the filament-data-studio:install command to publish and run migrations.

php artisan filament-data-studio:install

Usage

Register the plugin on your Panel.

use RyanChandler\DataStudio\DataStudioPlugin;

$panel
    ->plugin(DataStudioPlugin::make());

Add the ExportAction to one of your Resource tables.

use RyanChandler\DataStudio\Actions\ExportAction;

public static function table(Table $table): Table
{
    return $table
        ->columns([
            // ...
        ])
        ->filters([
            // ...
        ])
        ->headerActions([
            ExportAction::make(),
        ]);
}

Open up the resource inside of your panel and start exporting data!

Using a custom Export model

If you wish to change the Export model and extend it with your own columns, you can do this by creating a model of your own that extends the base Export model and then configuring the plugin to use the new model.

use RyanChandler\DataStudio\Models\Export as BaseExport;

class Export extends BaseExport
{
    //
}

Inside of your PanelProvider:

use App\Models\Export;

$panel
    ->plugin(
        DataStudioPlugin::make()
            ->exportModelClass(Export::class)
    );

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.