Filemanager

Filemanager stats

Downloads
493
Stars
96
Open Issues
1
Forks
11

View on GitHub →

A simple, friendly and practical Livewire filemanager for your applications

Livewire filemanager image

A Livewire filemanager for your Laravel applications

A simple, friendly, and practical file manager designed specifically for Laravel applications. This Livewire-powered tool makes it easy to manage files and folders within your project, offering an intuitive interface and seamless integration with Laravel's ecosystem. Perfect for developers seeking an efficient and user-friendly solution for file and folders management.

  • Drag & drop files
  • Search for files or folders
  • Ready to include in any projects
  • Multiple languages (en, es, fr, pt)
  • Darkmode available

Project requirements

  • PHP 8.2.0 or greater required

Important composer dependencies

Installation

[!IMPORTANT] This package is still in development and its structure can change until a stable version is released. Use with caution in you projects.

You can install the package via composer:

composer require livewire-filemanager/filemanager

Publish the package's migration file:

php artisan vendor:publish --tag=livewire-fileuploader-migrations

This package relies on spatie/medialibrary to handle the medias, so if you haven't already configured the package, don't forget this step:

php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="medialibrary-migrations"

If you need for informations about the spatie/medialibrary package, please visit their documentation

[!NOTE] Thumbnails When you upload images, the package will generate a thumbnail. By defaults, it will be dispatched into the queues. You'll have to launch the workers inside your app or change the QUEUE_CONNECTION value in your .env file

After that, you need to run migrations.

php artisan migrate

This will create a folders table which will hold all the filemanager structure and a media table if not already present.

Package configuration

Next, you'll need to use the <x-livewire-filemanager /> component where you want to place the filemanager.

For the styles and scripts, the package relies on TailwindCSS and AlpineJS. So if you don't already have them installed, you can include the @filemanagerScripts and @filemanagerStyles.

<!DOCTYPE html>
<html>
<head>
@filemanagerStyles
</head>
 
<body>
<x-livewire-filemanager />
 
@filemanagerScripts
</body>
</html>

[!IMPORTANT] The @filemanagerStyles will include the PLAY CDN from TailwindCSS which is not recommended for production. Instead, prefer including the path inside your tailwind config file.

module.exports = {
content: [
'./resources/**/*.blade.php',
'./vendor/livewire-filemanager/filemanager/resources/views/**/*.blade.php',
],
}

If you intent to give access to your files with the public, you can add this inside your web routes file:.

Route::get('{path}', [FileController::class, 'show'])->where('path', '.*')->name('assets.show');

And don't forget to import the FileController class:

use LivewireFilemanager\Filemanager\Http\Controllers\Files\FileController;

This will give you an endpoint where you can reach the files with a direct url.

The interface

Once everything is installed, the interface should look like this:

Livewire filemanager interface

Testing

composer test

Changelog

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

Contributing

All contributions are welcome and will be fully credited.

Please see CONTRIBUTING for details.

Credits

License

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

livewire-filemanager photo

The Laravel Livewire Filemanager for artisans

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.


Livewire Filemanager Filemanager Related Articles

Laravel WhatsApp: Two Backends Behind One Facade image

Laravel WhatsApp: Two Backends Behind One Facade

Read article
NationForge: A Self-Hosted Admin Panel for Civic Organizations image

NationForge: A Self-Hosted Admin Panel for Civic Organizations

Read article
Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance image

Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance

Read article
How We Cached Laravel News at the Edge with Fast Laravel image

How We Cached Laravel News at the Edge with Fast Laravel

Read article
Community Laravel Extension for Zed image

Community Laravel Extension for Zed

Read article
Shift + AI = Fully Automated Laravel Upgrades image

Shift + AI = Fully Automated Laravel Upgrades

Read article
Celebian logo

Celebian

Celebian is a social media marketing agency specializing in helping their clients go viral on TikTok. Whether you're looking to reach a bigger audience or gain more Tiktok followers, likes, and views, they've got you covered.

Celebian
Lucky Media logo

Lucky Media

Get Lucky Now - the ideal choice for Laravel Development, with over a decade of experience!

Lucky Media
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Multi-tenant Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Curotec logo

Curotec

World class Laravel experts with GenAI dev skills. LATAM-based, embedded engineers that ship fast, communicate clearly, and elevate your product. No bloat, no BS.

Curotec