URL Image Uploader
CommunityA powerful Filament PHP form component that enables seamless image uploads from URLs. Features include image validation, preview functionality, and easy integration with Laravel storage. Perfect for remote image imports, content management, and e-commerce applications built with FilamentPHP.
Author:
Muhammad Amjad
Package health
BetaAutomated checks of this plugin's Composer package
15 checks
- Skipped: GitHub Actions pinned to SHA
- Skipped: GitLab CI includes pinned to SHA
- Passed: Open security advisories
- Passed: Dependabot PR responsiveness — No open Dependabot PRs.
- Skipped: Renovate MR responsiveness
- Failed: Dependabot or Renovate configured — No dependency updater configuration found. View details on Plumb
- Skipped: Dependency update cooldown configured
- Failed: Provides a security policy — View details on Plumb
- Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
- Passed: Commit and release recency — Active: last commit 9 days ago; last release 9 days ago.
-
Failed:
composer.lock not committed by library
—
composer.lockis present in the released dist archive. View details on Plumb - Warning: Dist archive is lean
-
Passed:
Current Laravel version supported
—
Package dependencies resolve together with current Laravel
13.0. -
Passed:
Current PHP version supported
—
Constraint
^8.1supports current PHP8.5. - Skipped: Current Symfony version supported
filament/
namespace. Review the source and install at your own risk. Found
malware or an unresolved security issue the author won't
address?
Report it
.
Documentation
- Installation
- Usage
- Configuration
- Scope
- Testing
- Support
- Changelog
- Security Vulnerabilities
- Contributing
A powerful Filament PHP form component that enables seamless image uploads from URLs. Features include image validation, preview functionality, and easy integration with Laravel storage. Perfect for remote image imports, content management, and e-commerce applications built with FilamentPHP.
#Installation
You can install the package via composer:
composer require amjadiqbal/filament-url-image-uploader
#Usage
use AmjadIqbal\FilamentUrlImageUploader\Components\UrlImageUploader;
UrlImageUploader::make('image')->directory('images');
The field renders two tabs — upload a file directly, or paste an image URL and fetch it server-side.
Either way, the value saved to your model attribute is always a plain storage path string (e.g.
"images/example.jpg"), never an array — no accessor/mutator gymnastics required on your model:
// database column: image (string, nullable)
class Post extends Model
{
protected $fillable = ['image'];
}
To render the stored image elsewhere in your app, resolve it through the disk you configured:
Storage::disk('public')->url($post->image);
#Configuration
#Directory
You can customize the storage directory:
UrlImageUploader::make('image')->directory('custom/path/here');
#Disk
By default, files are stored on the public disk. You can target any configured disk:
UrlImageUploader::make('image')->disk('s3');
#Preserve original filenames
UrlImageUploader::make('image')->preserveFilenames();
#URL fetch size limit
The "URL Upload" tab downloads the remote image server-side before validating its content type. By default, downloads larger than 10 MB are rejected; adjust it with:
UrlImageUploader::make('image')->maxUrlFetchSize(5 * 1024 * 1024); // 5 MB
#Scope
UrlImageUploader manages a single image per field. It does not currently support Filament's
multiple() mode — for a gallery of several images, use one UrlImageUploader per image, or a
Repeater of them.
#Testing
composer test # PHPUnit, via Orchestra Testbench
composer analyse # Larastan/PHPStan (level 5)
composer format # Laravel Pint
#Support
#Documentation
- Full Documentation
- API Reference
- Examples & Tutorials
#Community
- Join our Discord Community for discussions
- Report issues on GitHub
#Professional Support
Need expert help? Hire me on Upwork for:
- Custom implementations
- Feature development
- Technical consulting
- Priority support
#Changelog
Please see CHANGELOG.md for more information on what has changed recently.
#Security Vulnerabilities
If you discover a security vulnerability, please report it in our Security Room on Discord. All security vulnerabilities will be promptly addressed.
#Contributing
We welcome contributions!
#Contributors
Made with contrib.rocks.
#Custom Development
Hire me on Upwork for:
- Package integration
- Custom feature development
- Technical consultation
- Project implementation
#Community Support
For priority support and enterprise solutions, please reach out via Upwork for direct assistance.
The author
I am a seasoned full-stack web developer specializing in Laravel, Livewire, and Vue.js ecosystems. With extensive experience in building modern web applications, I leverage the power of Laravel's elegant syntax and robust features to create scalable backend solutions. My expertise extends to crafting responsive and interactive user interfaces using Livewire and Vue.js, enhanced by the utility-first approach of Tailwind CSS.
Featured Plugins
A selection of plugins curated by the Filament team
Blueprint
Filament Blueprint is a premium Laravel Boost extension that helps AI agents produce accurate, detailed implementation plans and security reports for Filament apps.
Filament
Custom Fields
Eliminate custom field migrations forever. Let your users create and manage form fields directly in Filament admin panels with 20+ built-in field types, validation, and zero database changes.
Relaticle
Advanced Tables (formerly Filter Sets)
Supercharge your tables with powerful features like user-customizable views, quick filters, multi-column sorting, advanced table searching, convenient view management, and more. Compatible with Resource Panel Tables, Relation Managers, Table Widgets, and Table Builder!
Kenneth Sese