Download the PHP package survos/media-bundle without Composer
On this page you can find all versions of the php package survos/media-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download survos/media-bundle
More information about survos/media-bundle
Files in survos/media-bundle
Package media-bundle
Short Description Manage media without direct relationships
License MIT
Informations about the package media-bundle
Survos Media Bundle
SurvosMediaBundle provides a deterministic, URL‑centric media registry for Symfony applications.
It is intentionally not a media processor. Instead, it:
- Registers media references (URLs or local files)
- Assigns deterministic IDs derived from URLs
- Stores application‑local media metadata
- Syncs with a centralized media server (future step)
- Generates thumbnail URLs via imgproxy‑style patterns (future step)
This mirrors the relationship between babel‑bundle and lingua‑server:
- Applications own their media tables
- A central service owns the binaries and heavy processing
Core Concept: Deterministic Media IDs
Every media item has a stable, deterministic ID derived from its URL.
The algorithm:
- Base64‑encodes the URL
- Converts it to URL‑safe base64
- Removes padding
This is the same philosophy used by imgproxy.
Why this matters
- No database lookups to resolve URLs
- IDs are reversible
- Same URL → same ID across apps
- Safe primary key for Meilisearch
Registering Media
The primary entry point is MediaRegistry.
Behavior
- Defaults to
Photo - No duplicate URLs
- Bulk‑safe (
flush: false) - No network calls
Local files are also supported:
Local files are assigned a temporary local:// URL until synced.
Probing Mediary (Polling Fallback)
When webhook callbacks are unavailable (for example, local dev tunnels are down), poll mediary directly via the bundle service.
Available methods:
probe(string $assetId): MediaProbeResult→ callsGET /fetch/media/{id}probeMany(array $assetIds): array<MediaProbeResult>→ callsPOST /fetch/media/by-ids
Probe payload includes current workflow state (marking), variants/thumb URLs, metadata, and any OCR/AI context that has been written so far.
CLI helper:
Publishing Claims to Mediary
Apps run AI with survos/ai-workflow-bundle and store tracked metadata as
claims. Media publishing should send the image plus selected source/AI/human
claims to mediary, while mediary remains responsible for global media access and
canonical image URLs. See docs/publishing.md.
What This Bundle Does Not Do
- Download media
- Resize images
- Cache thumbnails
- Perform OCR, tagging, or EXIF extraction
Those responsibilities belong to the media server and imgproxy.
Status
This bundle is intentionally minimal and evolving.
Next steps include:
media:synccommand- Provider detection (YouTube, Flickr, etc.)
- Thumbnail URL generation helpers
All versions of media-bundle with dependencies
symfony/config Version ^8.1
symfony/dependency-injection Version ^8.1
symfony/http-kernel Version ^8.1
twig/twig Version ^3.4
doctrine/dbal Version ^4.3.2
doctrine/doctrine-bundle Version ^3.0
survos/data-contracts Version ^2.5
survos/field-bundle Version ^2.5
survos/kit-bundle Version ^2.5
survos/tabler-bundle Version ^2.5
symfony/ux-twig-component Version ^3.0
survos/iiif-bundle Version ^2.7
league/flysystem Version ^3.0