Modules
A robust, Ecto-backed media management library for Elixir and Phoenix.
Behaviour for async processing adapters.
Oban-based async processor for reliable background processing.
Default async processor using Task.Supervisor.
BlurHash generation for images.
Represents a media collection configuration.
Ready-to-use Phoenix LiveView components for media uploads and galleries.
Configuration helpers for PhxMediaLibrary.
Represents an image conversion configuration.
Handles the execution of image conversions.
Base exception for PhxMediaLibrary errors.
Adds media association capabilities to an Ecto schema.
Provides the media_collections do ... end and media_conversions do ... end
declarative macros for defining media configuration at compile time.
Behaviour for image processing adapters.
Image processor implementation using the Image library.
No-op image processor used when no image processing library is installed.
Provides upload helpers for Phoenix LiveViews.
The Media schema represents a file associated with an Ecto model.
Builder struct for adding media to a model.
A self-contained LiveComponent for media uploads and gallery display.
Behaviour and default implementation for extracting file metadata.
Default metadata extractor using the Image library for images.
Behaviour and default implementation for content-based MIME type detection.
Default MIME type detector using magic byte signatures.
Discovers and caches the Ecto schema module for a given mediable_type string.
Behaviour for generating storage paths for media files, plus a set of delegating functions that route calls to the configured implementation.
Date-based path generator for PhxMediaLibrary.
Default path generator for PhxMediaLibrary.
Flat path generator for PhxMediaLibrary.
Tenant-scoped path generator for PhxMediaLibrary.
A Plug that serves local-disk media files with optional Content-Disposition
and HMAC-signed URL verification.
Generates responsive image variants for optimal loading across devices.
Calculates optimal widths for responsive image generation.
HMAC-SHA256 signing and verification for time-limited local-disk URLs.
Behaviour for storage adapters.
Local filesystem storage adapter.
In-memory storage adapter for testing.
Amazon S3 storage adapter.
Exception raised when a storage operation fails.
Telemetry integration for PhxMediaLibrary.
Generates URLs for media files.
Exception raised when a media validation fails.
Behaviour for video processing adapters.
Video processor implementation using ffprobe and ffmpeg.
No-op video processor used when FFmpeg is not available.
Helper functions for rendering media in Phoenix templates.
Oban worker for processing media conversions.
Mix Tasks
Cleans up orphaned media files.
Runs health checks on the media library and reports issues.
Generates a new PhxMediaLibrary migration.
Installs PhxMediaLibrary in your project.
Permanently deletes soft-deleted media items that are older than a given age.
Regenerates media conversions.
Regenerates responsive images for existing media.
Displays storage statistics for media files.