openplain/filament-transporter
Filament Transporter
Transport Filament resources between projects with automatic dependency discovery.
Features
- 🔍 Automatic file discovery using PHP reflection
- 📦 Smart composer dependency detection
- 🔄 Version tracking and conflict detection
- 💾 Automatic backups before changes
- 🎯 Interactive CLI interface
Installation
composer require openplain/filament-transporter --dev
Usage
Export a Resource
# Interactive
php artisan filament:transporter:export
# Direct
php artisan filament:transporter:export NavigationCategoryResource
Import into Another Project
# Interactive
php artisan filament:transporter:import
# Direct
php artisan filament:transporter:import navigation-category-resource
How It Works
Uses PHP reflection to automatically discover:
- Models, migrations, factories, seeders
- Enums, actions, policies
- Nested Filament resource structures
- Type-hinted dependencies
- Composer packages from use statements
Options
Preview Changes
php artisan filament:transporter:import component-name --preview
Force Overwrite
php artisan filament:transporter:import component-name --force
Custom Directories
php artisan filament:transporter:export Resource --output=/path/to/exports
php artisan filament:transporter:import component --from=/path/to/exports
Configuration
Publish the config file:
php artisan vendor:publish --tag=filament-transporter-config
Configure export/import directories in config/filament-transporter.php:
return [
'export' => [
'output_dir' => '../filament-transporter-exports',
],
'import' => [
'source_dir' => '../filament-transporter-exports',
'backup_dir' => 'storage/filament-transporter-backups',
],
];
Testing
composer test
composer pint
License
The MIT License (MIT). Please see License File for more information.