axn/livewire-upload-handler

Modern file upload handler for Livewire 3 with chunked uploads, image previews, and Spatie Media Library integration

Installs: 16

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/axn/livewire-upload-handler

1.2.2 2026-01-18 17:34 UTC

This package is auto-updated.

Last update: 2026-01-18 17:36:17 UTC


README

Modern file upload handler for Livewire 3 with chunked uploads, image previews via Glide, and Spatie Media Library integration.

Features

  • Chunked uploads for large files
  • Image previews with Glide
  • Drag & drop support
  • Sortable files (with Sortable.js)
  • MIME type & file size validation
  • Themeable (CSS classes + icons)
  • Spatie Media Library integration
  • i18n (English + French)
  • Auto-save or manual mode

Requirements

  • PHP 8.4+
  • Laravel 12+
  • Livewire 3.1+

Uses PHP 8.4 features: asymmetric visibility, enums, typed exceptions.

Quick Start

composer require axn/livewire-upload-handler

Add to your layout:

<head>
    @livewireStyles
    @livewireUploadHandlerStyles
</head>
<body>
    @livewireScripts
    @livewireUploadHandlerScripts
</body>

⚠️ Important: Exclude temporary files from Git:

# Add livewire-tmp/ to main .gitignore
if ! grep -q "livewire-tmp/" storage/app/.gitignore 2>/dev/null; then
    echo "livewire-tmp/" >> storage/app/.gitignore
fi

# Create .gitignore for Glide cache
mkdir -p storage/app/.livewire-upload-handler-glide-cache && \
echo "*" > storage/app/.livewire-upload-handler-glide-cache/.gitignore && \
echo "!.gitignore" >> storage/app/.livewire-upload-handler-glide-cache/.gitignore

See Installation for details.

Single file upload:

<livewire:upload-handler.item />

Documentation

License

MIT License - see LICENSE

Credits