shamseer1997/laravel-file-viewer

A basic file viewer for Laravel projects

Installs: 3

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 0

Forks: 28

Language:JavaScript

pkg:composer/shamseer1997/laravel-file-viewer

v1.0.2 2025-06-24 13:09 UTC

This package is auto-updated.

Last update: 2025-12-24 14:12:29 UTC


README

Latest Version on Packagist Total Downloads GitHub GitHub Stars

Laravel File Viewer

Laravel File Viewer is the easiest way to preview images, videos, audio, PDF, DOCX, PPTX, XLSX, and more in your Laravel app. Instantly add beautiful file previews to your admin panels, dashboards, or user portals.

✨ Loved by developers. Easy to install. Works out of the box.

🚦 Features

  • πŸ“„ Preview images, videos, audio, PDF, DOCX, PPTX, XLSX, and more
  • ⚑️ Super simple integrationβ€”just one line in your controller!
  • 🎨 Customizable UI (publish and tweak the views)
  • πŸ›‘οΈ Secure: works with Laravel's storage disks
  • 🌍 Multilingual ready

πŸ› οΈ Installation

Install via Composer:

composer require shamseer1997/laravel-file-viewer

Publish assets:

php artisan vendor:publish --provider="shamseer1997\LaravelFileViewer\LaravelFileViewerServiceProvider" --tag=assets

Publish views (optional, for UI customization):

php artisan vendor:publish --provider="shamseer1997\LaravelFileViewer\LaravelFileViewerServiceProvider" --tag=views

πŸš€ Quick Start

Add the alias in your config/app.php (Laravel 10 and below):

'aliases' => Facade::defaultAliases()->merge([
    'LaravelFileViewer' => shamseer1997\LaravelFileViewer\LaravelFileViewerFacade::class,
])->toArray(),

Example Controller

use Illuminate\Http\Request;
use shamseer1997\LaravelFileViewer\LaravelFileViewer;

class FilePreviewController extends Controller
{
    public function filePreview($fileName){
        $filePath = $fileName;
        $disk = 'public';
        $fileUrl = asset('storage/' . $fileName);
        $fileData = [
            [
                'label' => __('Label'),
                'value' => "Value"
            ]
        ];
        return LaravelFileViewer::show($fileName, $filePath, $fileUrl, $disk, $fileData);
    }
}

Add a route in routes/web.php:

Route::get('/file-preview/{fileName}', [FilePreviewController::class, 'filePreview']);

🌟 Why Laravel File Viewer?

  • Save hours: No need to integrate multiple JS libraries yourself.
  • Modern UI: Looks great out of the box.
  • Flexible: Works with any Laravel storage disk.
  • Trusted: Used in production by agencies and startups.

πŸ“ˆ Help Us Grow!

If you find this package useful:

  • ⭐ Star this repo on GitHub
  • πŸ“¦ Try it in your next Laravel project
  • πŸ’¬ Share feedback and suggestions

πŸ“‹ Changelog

See CHANGELOG for recent updates.

🀝 Contributing

PRs are welcome! See CONTRIBUTING for details. Questions? Email hsvirus2015@gmail.com or open an issue.

πŸ”’ Security

If you discover any security issues, please email hsvirus2015@gmail.com instead of using the issue tracker.

πŸ‘ Credits

πŸ“„ License

MIT. See License File for details.

🎬 Demo

AwesomeScreenshot-1_2_2023.1.32.27PM.mp4