Download the PHP package scapteinc/lara-veil without Composer
On this page you can find all versions of the php package scapteinc/lara-veil. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package lara-veil
Lara-Veil
A WordPress-like extensibility system for Laravel applications that allows dynamic loading of plugins and themes without modifying core code. Build modular, extensible applications with a robust plugin ecosystem, theme support, and advanced media processing.
๐ฏ Features
โ
Dynamic Plugin System - Install, activate, deactivate, and uninstall plugins at runtime
โ
Theme Management - Switch themes dynamically with parent/child inheritance support
โ
Hook System - WordPress-style Action/Filter system for extensibility
โ
Media Forge Service - Advanced media processing with image manipulation, compression, and format conversion
โ
Reactive Admin Panel - Laravel Volt components with Livewire interactivity
โ
RESTful API - Full API endpoints for plugins, themes, media, and system management
โ
Console Commands - 12 artisan commands for plugin/theme/media management
โ
Service Management - Automatic service provider registration for plugins/themes
โ
Database Integration - Full Eloquent models with migrations
โ
Caching System - Performance-optimized with configurable caching
โ
Authentication - Built-in admin authentication middleware
โ
Precompiled Assets - Ready-to-use CSS and JavaScript with Tailwind styling
๐ฆ System Architecture
Core Components
๐ Installation
For Production (After Publishing to Packagist)
Install via Composer:
Publish assets:
For Development (Local/Path Repository)
If developing locally, add to your composer.json:
Run:
โ๏ธ Configuration
Publish Configuration Files
This creates:
config/lara-veil.php- Main system configurationconfig/vormia.php- MediaForge configuration
Example Configuration
๐ Usage
Plugin Management
CLI Commands
Admin Panel
Navigate to /admin/plugins to manage plugins via the web interface:
Plugin Gallery (/admin/plugins)
- Responsive grid layout (3 cols on desktop, 2 cols on tablet, 1 col on mobile)
- Plugin cards with metadata display
- Status badges (Active/Inactive/Broken)
- Quick actions:
- Settings - Edit plugin configuration
- Activate/Deactivate - Toggle plugin status
- Delete - Remove plugin with confirmation
- Pagination (12 items per page)
- Install plugin button
- Empty state with CTA
Plugin Creation (/admin/plugins/create)
- Form to install new plugin
- Fields: Name, Namespace, Version, Author, Description
- Input validation
- Confirmation on submit
Plugin Settings (/admin/plugins/{id}/edit)
- View plugin info (namespace, version, author, description)
- Edit custom metadata (JSON)
- Save/cancel buttons
Theme Management
CLI Commands
Admin Panel
Navigate to /admin/themes to manage themes via the web interface:
Theme Gallery (/admin/themes)
- Responsive grid layout with thumbnail images
- Theme cards showing metadata
- Active theme indicator (green badge)
- Features:
- Settings - Configure theme options
- Activate - Make theme live (one active at a time)
- Delete - Remove theme and child themes
- Pagination (12 items per page)
- Install theme button
- Empty state with CTA
- Parent/child theme support display
Theme Details (/admin/themes/{id})
- Thumbnail image display
- Theme metadata sidebar
- Full description
- Custom settings editor (JSON)
- Child themes list with quick links
- Settings management
Media Management
CLI Commands
Media Library Admin Interface
Navigate to /admin/media for the complete Media Library interface with:
Gallery View (/admin/media)
- Responsive grid layout (2 cols mobile, 4 cols tablet, 6 cols desktop)
- Thumbnail previews with file type icons for non-images
- Hover overlays with action buttons
- Pagination (24 items per page)
- Quick actions:
- Edit - Open full editor with image transformations
- Duplicate - Create copy with automatic collision detection
- Delete - Remove media with confirmation dialog
- Session-based success/error notifications
- Empty state with upload CTA
Media Editor (/admin/media/{id}/edit)
- Image preview with refresh timestamp
- File details panel (name, MIME type, size, dimensions)
- Public URL with one-click copy to clipboard
- Image Replacement - Upload new version with automatic old file cleanup
- Resize Controls - Width/height inputs with aspect ratio toggle
- Transformations - Rotate (0ยฐ/90ยฐ/180ยฐ/270ยฐ) and flip (horizontal/vertical)
- Adjustments:
- Brightness (-100 to +100)
- Contrast (-100 to +100)
- Blur effect (0-100)
- Greyscale toggle
- Permanent delete with confirmation
- Responsive three-column layout (collapses to two on mobile)
Upload Form (/admin/media/create)
- File input with validation
- Upload progress indicator
- Back to library button
- Error handling with user feedback
Hook System
Register Hooks
Execute Hooks
MediaForge Service
Advanced media processing with fluent API:
Supported Operations
- resize - Resize with aspect ratio preservation
- compress - JPEG compression with quality control
- convert - Format conversion (JPG, PNG, WebP, GIF)
- thumbnail - Multi-size thumbnail generation
- watermark - Image/text watermarking with positioning
- avatar - Rounded square avatar creation
- rotate - Image rotation with background color
- flip - Horizontal/vertical/both flips
- blur - Blur filter with amount control
RESTful API
Full RESTful API for integration:
๐จ Admin Components
Volt Components (Reactive)
Interactive admin panel with Laravel Volt:
- dashboard.volt - System statistics and quick actions
- plugins-table.volt - Plugin listing with filtering and actions
- themes-table.volt - Theme management with activation
- media-gallery.volt - Media library with upload
- settings-form.volt - System settings management
Blade Views
Server-rendered admin pages:
- Dashboard overview
- Plugin management
- Theme management
- Media library
- Settings
- System information
๐ Database
Migrations
Auto-loaded migrations create three main tables:
Models
Use Eloquent models for database interaction:
๐ Authentication
All admin routes are protected by the auth middleware:
๐ฆ Asset Publishing
Publish assets to customize styles and scripts:
๐งช Testing
Run tests:
๐ Creating Plugins
A Lara-Veil plugin is a Laravel package with metadata:
๐ Full Documentation
For complete documentation, see system.md in the root project.
๐ค Contributing
See CONTRIBUTING.md for guidelines.
๐ License
Licensed under the MIT License.
๐ Security
See SECURITY.md for security reporting and policies. composer update bash php artisan vendor:publish --tag=lara-veil-config bash php artisan vendor:publish --tag=lara-veil-migrations bash mkdir -p packages themes bash php artisan migrate
scapteinc/lara-veil/ โโโ src/ โ โโโ Core/ # Plugin, Theme, Hook managers โ โโโ Services/ # MediaForge service โ โโโ Models/ # Eloquent models โ โโโ Http/ โ โ โโโ Controllers/ # API & Admin controllers โ โโโ Providers/ # Service providers โ โโโ routes/ # Web & API routes โ โโโ database/ โ โโโ migrations/ # Database migrations โโโ config/ # Configuration files โโโ resources/ โ โโโ views/ # Blade templates (auto-loaded) โโโ composer.json bash php artisan plugin:list # List all plugins php artisan plugin:activate {name} # Activate a plugin php artisan plugin:deactivate {name} # Deactivate a plugin php artisan plugin:cache # Cache plugins php artisan plugin:clear-cache # Clear plugin cache php artisan plugin:diagnose # Run diagnostics bash php artisan theme:list # List all themes php artisan theme:activate {name} # Activate a theme php artisan theme:diagnose # Run diagnostics bash php artisan media:diagnose # Media diagnostics php artisan media:info # System information php artisan media:cleanup # Remove orphaned files php artisan media:prune # Delete unassociated media
GET /api/plugins # List plugins POST /api/plugins # Install plugin PUT /api/plugins/{id} # Update plugin DELETE /api/plugins/{id} # Uninstall plugin POST /api/plugins/{id}/activate # Activate plugin POST /api/plugins/{id}/deactivate # Deactivate plugin
GET /api/themes # List themes POST /api/themes/{id}/activate # Activate theme GET /api/themes/{id}/preview # Preview theme
POST /api/media/upload # Upload file with processing GET /api/media/{id} # Get media details DELETE /api/media/{id} # Delete media and related files
Lara-Veil Core System โโโ Core/ โ โโโ PluginManager.php # Plugin lifecycle management โ โโโ ThemeManager.php # Theme lifecycle management โ โโโ HookSystem.php # Action/Filter system โ โโโ ServiceManager.php # Service provider management โโโ Services/ โ โโโ MediaForgeService.php # Media processing and management โโโ Models/ โ โโโ Plugin.php # Plugin Eloquent model โ โโโ Theme.php # Theme Eloquent model โ โโโ Media.php # Media Eloquent model โโโ Providers/ โโโ LaraVeilServiceProvider.php # Package service provider bash npm run test
## Contributing
Contributions are welcome! Please create a pull request with:
- Clear description of changes
- Test coverage for new features
- Following PSR-12 coding standards
## License
This package is open-sourced software licensed under the MIT license.
## Support
For issues, questions, or suggestions, please visit:
- GitHub: [scapteinc/lara-veil](https://github.com/scapteinc/lara-veil)
## Changelog
See [CHANGELOG.md](CHANGELOG.md) for version history.All versions of lara-veil with dependencies
laravel/framework Version ^9.0|^10.0|^11.0|^12.0
intervention/image Version ^3.0