Download the PHP package pubvana/media without Composer
On this page you can find all versions of the php package pubvana/media. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pubvana/media
More information about pubvana/media
Files in pubvana/media
Package media
Short Description Media management module for Pubvana — images, video, embeds
License MIT
Informations about the package media
Pubvana Media
I noticed folks downloading some of these packages. I'm super grateful, Thank You! I would like to let folks know until this notice disappears I'm doing a lot of breaking changes without worrying about them. Once versions are up around 0.5.x things should settle down.
Media management module for Pubvana — images, video, and embeds. Built as a Flight School plugin.
Features
- Image uploads with automatic WebP derivatives (medium + thumbnail)
- Video uploads with optional ffmpeg poster extraction
- Embed storage (YouTube, Vimeo)
- Imagick or GD — auto-detects the best available processor
- Reusable media picker widget for any form
- Media service on
$app->media()— usable from any controller or plugin - Registers an
adextmenu contribution when admin is present
Requirements
- PHP 8.1+
enlivenapp/flight-schoolenlivenapp/flight-shieldenlivenapp/migrationsflightphp/active-record- Imagick or GD extension
- ffmpeg (optional, for video poster extraction)
Recommends
pubvana/admin(Admin UI for the media library and picker workflows)
Installation
Enable in app/config/config.php:
Migrations package creates the media table automatically on first load.
Flight School config
This package uses Flight School's return-array config format. src/Config/Config.php returns the package defaults as an array, and Flight School stores that array under pubvana.media on $app.
That returned array currently includes 'routePrepend' => 'media'. The package does not currently define public application routes in src/Config/Routes.php, but admin/media-related routes still use the normal Flight School loading flow.
Configuration
Defaults from Config.php — override in your plugin config block:
| Key | Default | Description |
|---|---|---|
upload_path |
'uploads' |
Relative to public/ |
max_image_size |
10485760 |
10 MB |
max_video_size |
104857600 |
100 MB |
allowed_image_ext |
['jpg','jpeg','png','gif','webp'] |
|
allowed_video_ext |
['mp4','webm','mov'] |
|
webp_quality |
85 |
WebP output quality (0-100) |
thumb_width |
300 |
Small derivative width (proportional resize) |
thumb_height |
200 |
Reserved for poster sizing / legacy config compatibility |
medium_width |
768 |
Medium resize width (proportional) |
Usage
Picker widget
Embed the media picker in any form:
Renders a clickable thumbnail with an offcanvas browser. The selected image path is written to a hidden input with the given name.
File structure
Uploads go to public/{upload_path}/YYYY/MM/:
License
MIT
All versions of media with dependencies
enlivenapp/flight-school Version ^0.3
enlivenapp/flight-shield Version ^0.2
enlivenapp/migrations Version ^0.2
flightphp/active-record Version ^0.7