Skip to content

Complete Laravel Vue Media Manager Package with folders, files, drag&drop sorting, image editor, and more

Notifications You must be signed in to change notification settings

letoceiling-coder/laravel_vue_media

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Vue Media Manager

Полноценный медиа-менеджер для Laravel 10/11 с Vue 3 интерфейсом, поддержкой папок, корзины, drag-and-drop сортировки, массовой загрузки, предпросмотра и анимаций.

Возможности

  • Древовидные папки с drag&drop сортировкой
  • Защищённые системные папки и корзина
  • Массовая загрузка файлов (Dropzone)
  • Предпросмотр изображений, видео, PDF, Office документов
  • Перемещение/восстановление/очистка корзины
  • Vue 3 + Bootstrap 5 интерфейс с модальными окнами без jQuery

Установка в существующий проект

composer require letoceiling-coder/mediamanager
php artisan vendor:publish --provider="LetoceilingCoder\MediaManager\MediaManagerServiceProvider" --tag=media-manager-config
php artisan vendor:publish --provider="LetoceilingCoder\MediaManager\MediaManagerServiceProvider" --tag=media-manager-assets
php artisan vendor:publish --provider="LetoceilingCoder\MediaManager\MediaManagerServiceProvider" --tag=media-manager-js
php artisan migrate

Frontend

  1. Установите JS-зависимости (добавьте их в ваш package.json, если ещё не установлены):
    npm install vue@^3.4 vue-router@^4.2 vuex@^4.1 axios @kyvg/vue3-notification bootstrap dropzone sortablejs fslightbox-vue
  2. Добавьте alias для опубликованных файлов (пример для vite.config.js):
    import { defineConfig } from 'vite';
    import vue from '@vitejs/plugin-vue';
    import path from 'path';
    
    export default defineConfig({
      plugins: [vue()],
      resolve: {
        alias: {
          '@media-manager': path.resolve(__dirname, 'resources/vendor/media-manager/js'),
        },
      },
    });
  3. Импортируйте @media-manager/app.js или нужные компоненты в ваше приложение и соберите ассеты через Vite.

Настройки

config/media.php:

  • route_prefix — API-префикс (по умолчанию api/v1)
  • route_middleware — middleware-стек (по умолчанию ['api', 'auth:api'])
  • user_model — класс модели пользователя (App\Models\User)
  • disk — диск хранения файлов (public)

Публикация на GitHub

git init
git add .
git commit -m "Initial release"
git remote add origin https://github.com/letoceiling-coder/laravel_vue_media.git
git push -u origin main

После публикации добавьте репозиторий в Packagist или используйте composer config repositories с типом vcs.

About

Complete Laravel Vue Media Manager Package with folders, files, drag&drop sorting, image editor, and more

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •