Cloud HostingLaunch UnoPim on fully-managed cloud hosting — fast, secure and cost-effective plans.
Skip to content

Previewing Assets

Every asset in the library can be previewed in place — no downloading, no external viewer. Images, video, audio, and PDFs each get a purpose-built viewer.


Opening a Preview

Click anywhere on an asset card in the gallery to open its preview. The hover action buttons (edit, download, delete) keep working independently, so clicking a button does not open the preview.

The preview also renders inline on the asset edit page, so you can see the file while you edit its tags and properties.

NOTE

Opening a preview requires the View permission (dam.asset.view).


Image Preview

Images open in a viewer with full zoom and pan support:

ControlWhat it does
Zoom in / outScale the image up or down
Fit to screenScale the image to fit the viewport
Actual sizeReset to actual pixel size (1:1)
Rotate left / rightTurn the image 90° at a time
Reset allUndo zoom, pan and rotation in one click
PanClick and drag to move around a zoomed image
Double-clickToggle between fit and zoomed

Image preview with the zoom, fit, actual size, rotate and reset controls visible in the viewer toolbar

Mouse and keyboard shortcuts

The viewer is built for people who page through a lot of images, so the common actions are on the keyboard and the scroll wheel.

ShortcutAction
Scroll wheelZoom in and out, centred on the pointer
+Zoom in
-Zoom out
RRotate right
LRotate left
0Reset zoom, pan and rotation
EscClose the preview

The same zoomable viewer is used on the public share page, so people you share a link with get the same experience.


Video and Audio Preview

Video and audio files play in a custom player rather than the browser's default controls.

ControlWhat it does
Play / pauseStart and stop playback
Scrub barJump to any point
Back 10s / Forward 10sSkip in 10-second steps
VolumeAdjust level
Mute (M)Silence without changing the level
SpeedChange playback rate
Loop (L)Repeat the file continuously
Picture in PicturePop the video into a floating window so you can keep working
Fullscreen (F)Fill the screen
More Actions → Copy LinkCopy a direct link to the file (confirms with "Copied!")
More Actions → Open in New TabOpen the raw file in its own tab

Video preview with the custom player controls — play/pause, scrub bar, skip, volume, speed, loop, PiP and fullscreen

For audio files, DAM reads the embedded ID3 cover art and uses it as both the asset thumbnail in the gallery and the backdrop of the audio player.


PDF Preview

PDFs render page-by-page inside the browser using PDF.js — you can page through the document without leaving DAM.


Thumbnails for PDFs and Videos

DAM generates real thumbnails for PDFs (first page) and videos (first frame) when they are uploaded. The work happens on the queue, so the thumbnail appears shortly after upload completes.

This requires two tools to be installed on the server:

ToolUsed for
ffmpegVideo first-frame thumbnails
poppler-utils (provides pdftoppm)PDF first-page thumbnails

If either is missing, the gallery falls back to a generic file-type icon and a warning is written to the log — nothing breaks, you just do not get a real preview image.

Backfilling existing assets

Assets uploaded before this feature existed will not have thumbnails. Generate them in bulk:

bash
php artisan dam:backfill-thumbnails

See Artisan Commands for the options.


The Info Panel

You do not need to open the asset edit page to check a file's details. The preview carries an info control — and the asset card shows "Click for full details" on hover — which opens a File Info panel:

FieldExample
File Namehero-banner.jpg
TypeImage, with a colour-coded extension badge
Size2.4 MB
PathRoot / Campaigns / Summer 2026
MIMEimage/jpeg
Dimensions1920 × 1080
Created atUpload date
Updated atLast modified date

Asset preview with the File Info panel open, listing name, type, size, path, MIME, dimensions and dates


Reading the Asset Card

Cards in the gallery are designed so you can identify a file without opening it:

CueMeaning
Colour-coded extension badgeThe file type at a glance — PDF, MP4, XLSX and so on each get their own colour
Play overlayThe asset is a video
Audio icon or cover artThe asset is audio; embedded album art is used when present
Faded thumbnailA real thumbnail has not been generated yet

Hovering a card reveals its action buttons — Preview, Edit image, download and delete — which work independently of the card click.

When a directory is empty, DAM shows a dedicated empty state rather than a blank pane.


Metadata

The Metadata tab on the asset edit page shows the technical metadata extracted from the file — dimensions, camera data, codec, duration, and so on, depending on the file type. This data is extracted once at upload and stored, so the tab loads instantly.

IMPORTANT

Full metadata extraction needs exiftool on the server. Without it DAM falls back to PHP's basic EXIF reader, which covers images only — IPTC, XMP and audio ID3 tags are not read, and audio cover art never appears. Nothing in the UI explains the shortfall, so if the Metadata tab looks unexpectedly thin, check exiftool -ver first. See Installation.

NOTE

The Metadata tab is permission-gated. A role needs Embedded Meta Info (dam.asset.meta_data) to see it.


Both the gallery and the asset edit page show the full ancestor path of the asset as a breadcrumb. Every segment is a link that jumps straight to that directory.

The previous / next arrows on the asset edit page move between assets within the same directory, and the position counter (3 of 48) reflects that directory's scope — not the whole library.


Downloading

ActionWhat you get
DownloadThe original file, exactly as uploaded
Download ZipThe asset packaged inside a ZIP container
Custom DownloadAn image converted to a chosen format (JPG, PNG, WebP, JPEG) and, optionally, resized to custom dimensions

NOTE

Custom Download on an SVG rasterises the vector first, which requires the PHP imagick extension. Without it, converting an SVG fails while other formats keep working.

Each of these is separately permissioned — see Setup.


Released under the MIT License.