Media Viewer

View and organize your images and videos into custom queues

Ready
0 items

📖 How Media Viewer Works

A complete guide to browsing, organizing, and enjoying your images and videos — with masonry layouts, auto-scroll, play-all, and custom queues — entirely in your browser.

100% Private — Your Files Never Leave Your Computer Everything runs inside your browser. No uploads, no accounts, no tracking. The tool opens folders in read-only mode — it cannot modify, move, or delete any file.

📺 What This Tool Does

Media Viewer is a pure browser-based viewer for images and videos. Open any folder and every image and video inside loads as a scrollable card gallery — with lazy-loading thumbnails, hover-play for videos, and instant full-size preview on click. Unlike the other Sakarto tools, this one performs no file operations. It cannot delete, move, or rename anything. It is purely for viewing.

Beyond basic browsing, it offers two layout modes, adjustable spacing, auto-scroll for hands-free viewing, global play-all for videos, and a custom queue system that lets you create named collections from any mix of files in the folder.

Grid & Masonry Layouts

Switch between a uniform grid and a Pinterest-style masonry layout that respects each image's natural aspect ratio.

Auto-Scroll

Hands-free scrolling at adjustable speed. Pauses automatically when you scroll manually, then resumes after 1 second.

Play All Videos

Start all visible videos simultaneously with one click. Staggered launch prevents browser audio conflicts.

Custom Queues

Create named collections — "Favourites", "Nature", "To Print" — from any mix of files in the folder, each with its own view.

↔️ Media Viewer vs. Other Sakarto Tools

Comparison of when to use Media Viewer versus other Sakarto organize tools
SituationUse This
I want to browse a folder of photos and enjoy them at leisure📺 Media Viewer
I want to find and remove near-identical duplicate photos🔍 Duplicate Finder
I want to delete unwanted images from a folder in bulk🗑️ Bulk Delete
I want to move photos into organised subfolders📂 Bulk Move
I want to rename a batch of photos with today's date as a prefix✏️ Bulk Rename
I want to create a curated selection of images for a project📺 Media Viewer → Queue
I want to watch a whole folder of vacation videos automatically📺 Media Viewer → Play All + Auto-scroll
Media Viewer is read-only. It opens folders with mode: "read", not "readwrite". Your files cannot be modified, moved, or deleted by this tool under any circumstance.

🧠 How It Works

  1. Read the Folder (Read-Only)

    When you select a folder, the browser reads every image and video file recursively. Only images (jpg, png, gif, webp, bmp) and videos (mp4, webm, mov, mkv, avi) are loaded based on which type checkboxes you have enabled. Other file types are silently skipped.

  2. Render Cards in Batches of 50

    Cards are built synchronously and appended to the DOM in batches of 50, yielding to the event loop between batches. Cards appear immediately as each batch completes — you can start browsing before the scan finishes.

  3. Lazy-Load with a 300px Lookahead

    No image or video content is decoded at load time. Each card uses an IntersectionObserver with a 300px root margin. When a card scrolls within 300px of the viewport, its src is set and the media begins decoding. This keeps memory usage low even for folders with thousands of files.

  4. Aspect Ratio Detection & Masonry Classes

    Once each image or video loads, its natural dimensions are read. The card is assigned one of three aspect ratio classes — aspect-portrait, aspect-landscape, or aspect-square — which controls max-height in masonry mode.

  5. Videos Auto-Play on Hover

    Video cards have preload="none" at load time to avoid network overhead. When your mouse enters a video card, it plays. When it leaves, it pauses. This is independent of the Play All feature.

📐 Layout Modes — Grid vs. Masonry

Toggle between two layout modes using the buttons above the file grid. The setting also applies to every custom queue tab independently.

📊 Grid Layout (default)
  • Fixed-width cards in equal columns (auto-fill, min 280px)
  • All card thumbnails are the same height (200px)
  • Images crop to fill with object-fit: cover
  • Best for quick browsing of large folders
  • Most predictable layout — no shift as images load
🧱 Masonry Layout
  • CSS column-count layout — images preserve natural proportions
  • Portraits, landscapes, and squares each get appropriate height
  • Spacing slider (0–20px) controls column gap
  • Best for appreciating photos as they were composed
  • Layout may shift slightly as aspect ratios are detected on scroll
Masonry uses CSS columns, not absolute positioning. Items flow top-to-bottom within each column in the alphabetical order files were read from the folder.

⬇️ Auto-Scroll — Hands-Free Browsing

Auto-scroll drives the page downward at a constant speed so you can lean back and watch images and videos scroll past without touching keyboard or mouse.

Start / Stop

Click ⬇️ Auto-scroll to start. Click ⏸️ Stop scroll or press Escape to stop.

Speed Control

The Speed slider (1–10) controls scroll velocity. Speed 3–4 works well for images; speed 1–2 for videos where you want to watch each clip.

Pause on Manual Scroll

Mouse wheel or trackpad input pauses auto-scroll immediately. It automatically resumes 1 second after you stop manually scrolling.

Stops at Bottom

When the page reaches within 10px of the bottom, auto-scroll stops automatically and shows a "Reached bottom" toast.

🎬 Video Features

Hover-Play

Move your mouse over any video card and it plays immediately. Move away and it pauses. Videos are muted by default so multiple hover-plays don't create noise. Each video loops.

Play All

Click ▶️ Play All to start every video on the page simultaneously. Launches are staggered by 30ms per video to avoid browser throttling. Click ⏸️ Pause All to stop them all.

Mute Toggle

Click 🔇 Videos in the toolbar to toggle global mute on all video elements.

Full Preview with Controls

Click the ▶️ icon on any video card to open a modal player with native browser controls (play, pause, seek, volume, fullscreen).

📂 Custom Queues — Build Named Collections

Queues let you curate a named collection of files from the folder — like a playlist for images and videos. Each queue gets its own tab in the sidebar with its own independent layout, spacing, and auto-scroll controls.

  1. Select files and click Add to Queue

    Click one or more cards to select them (blue border), then click 📂 Add to Queue in the toolbar. A modal appears. If queues already exist, you can add to an existing one or create a new one.

  2. Name the Queue

    Type a descriptive name — e.g., Nature, Favourites, To Print. Names must be unique. Click Create New Queue. The new queue tab appears in the sidebar.

  3. Browse and enjoy the Queue

    The queue tab shows only the files you added, with its own Grid/Masonry toggle, spacing slider, hide-info toggle, and auto-scroll controls.

  4. Remove files or delete the Queue

    Click the on any card in the queue to remove that file. Click the button next to the queue name in the sidebar to delete the entire queue. Clearing or deleting a queue never touches the actual files.

Queues are session-only. They exist only while the browser tab is open. Reloading the page clears all queues. Use Download List before reloading to export the filenames.

📋 Step-by-Step: Using Media Viewer

Step 1

Choose Images, Videos, or Both

On the welcome screen, check the file type boxes: 🖼️ Images and/or 🎬 Videos. If you only want to watch videos, uncheck Images to reduce the number of cards loaded.

Step 2

Select a Folder

Click 📂 Select Folder. A native folder picker opens (Chrome / Edge). Or drag and drop a folder directly onto the page. The folder is opened read-only — nothing in it can be modified.

Step 3

Choose a Layout and Browse

Use the 📊 Grid / 🧱 Masonry buttons above the results to switch layout. In Masonry mode, use the Spacing slider to adjust the gap between columns (0–20px). Check Hide file info to show only the media for an immersive look.

Step 4

Play Videos and Auto-Scroll

Hover over any video card to play it. Click ▶️ Play All to launch every video at once. Click ⬇️ Auto-scroll and set a comfortable speed — then sit back and let the gallery scroll by automatically.

Step 5

Preview Full-Size

Click the 🔍 or ▶️ icon on any card to open a full-size modal. Images scale to fit the screen. Videos open with native controls including fullscreen. Click anywhere outside to close.

Step 6

Compare Files Side-by-Side

Ctrl+Click (Cmd+Click on Mac) any 2 or more cards to add them to the compare list (purple border). Click ⚖️ Compare in the toolbar. A modal opens showing each file side-by-side with dimensions, size, type, and path.

Step 7

Create a Custom Queue

Select files you want to group, click 📂 Add to Queue, give the collection a name, and click Create. The new tab appears in the sidebar. Add more files to it at any time.

🏛️ Quick Reference — All Controls

All toolbar buttons and keyboard shortcuts for Media Viewer
Button / ActionWhat it does
🔄 Select New FolderReload the page and pick a new folder to view
📋 Copy Names (N)Copy selected filenames to clipboard. N = count.
📂 Add to Queue (N)Add selected files to an existing or new named queue
✕ Deselect AllRemove selection from all cards
⚖️ Compare (N)Open side-by-side compare modal for Ctrl+clicked files. Needs 2+.
▶️ Play AllStart all visible video elements simultaneously
⏸️ Pause AllPause all video elements (appears when Play All is active)
🔇 VideosMute / unmute all video elements on the page
📊 Grid buttonSwitch to uniform grid layout
🧱 Masonry buttonSwitch to aspect-ratio-aware masonry layout
Spacing sliderAdjust column gap in masonry mode (0–20px)
Hide file info checkboxHide filename, path, and metadata row; show only media
⬇️ Auto-scrollStart smooth continuous downward scrolling
Speed sliderAuto-scroll velocity (1 = slowest, 10 = fastest)
Click cardSelect / deselect the file (blue border)
Ctrl + Click cardAdd / remove from compare list (purple border)
Click & drag (empty area)Box-select multiple cards at once
Ctrl + dragAdd to existing selection with box
Hover video cardAuto-play the video clip. Stops on mouse leave.
🔍 / ▶️ icon on cardOpen full-size modal preview with native controls
Right-click cardContext menu: Copy Name / Preview / Add to Compare / Add to Queue
Ctrl+ASelect all files in current view
EscapeDeselect all & stop auto-scroll
📥 Download ListExport a plain-text list of all files with size and dimensions

⭐ What Users Say

Based on 94 reviews

"The masonry + auto-scroll combination is perfect for reviewing large photo collections. Nothing else comes close for in-browser browsing."

"Custom queues are brilliant — I built a 'To Print' collection in minutes without moving a single file."

"Play All videos + auto-scroll and I have a self-running slideshow from my vacation folder. Incredible that it works entirely in a browser tab."

"Hide file info + masonry at 4px spacing gives you a gorgeous clean gallery. Best browser photo viewer I've found."

💡 Tips for Best Results

Masonry + Hide Info = Gallery Mode

Combine masonry layout, spacing at 4–8px, and Hide file info for a clean gallery experience that fills the page with media edge to edge.

Auto-Scroll + Videos = Slideshow

Set speed to 1–2, enable Play All, then start auto-scroll for a self-running video slideshow. Use fullscreen on the browser tab for the best effect.

Use Queues for Curation

Browse the whole folder first, then go back and select the standout shots. Add them to a "Best of" queue. Switch to the queue for a refined viewing session.

Filter Before Loading

If you only want images, uncheck Videos before selecting the folder. Fewer cards = faster loading, smoother scrolling, and less memory.

Export Queue Contents

When viewing a queue, click Download List to save a text file of the queue's filenames and paths before the session ends.

Compare Before Queueing

If you have two similar shots and only want to queue the better one, Ctrl+Click both, open Compare, then deselect the weaker one before adding to queue.

⚠️ Known Limitations

Queues are not saved between sessions.

All queues are held in memory for the lifetime of the browser tab. Reloading the page clears everything. Use Download List to export filenames if you want to preserve a selection.

Memory usage grows with folder size.

Each loaded image or video holds a decoded bitmap or video element in the browser's memory. For folders with thousands of high-resolution images, RAM usage can become significant. Scan specific subfolders rather than entire photo drives.

Masonry layout shifts as images load.

Because aspect ratios are only known after each image decodes on scroll, the masonry layout may reflow slightly. This is normal behaviour with CSS column masonry.

Full functionality requires Chrome or Edge.

The File System Access API (folder picker, recursive reading) is only available in Chrome 86+ and Edge 86+. Firefox and Safari can use the fallback file input, but folder drag-and-drop may not work fully.

Play All may be blocked for many videos.

Browsers limit simultaneous media playback. If the folder contains a large number of videos, some may not start due to browser resource limits.

Images and videos only — no audio, documents, or archives.

Media Viewer is purpose-built for visual media. For audio files or documents, use Bulk Delete or Bulk Move which support all file types.

🔒 Privacy & Security

Opened in read-only mode. The File System Access API call uses mode: "read". The browser enforces this at the OS level — write operations are not possible through this permission grant.
Zero network activity after page load. All images and videos are decoded locally. No data leaves your device at any point during browsing, queuing, or auto-scroll.
Folder access is scoped and session-only. Permission covers only the folder you selected, lasts only while the tab is open, and is revocable from browser site settings at any time.
No preferences are persisted. Media Viewer saves nothing to localStorage. Every session starts fresh with default settings.

❓ Frequently Asked Questions

Can this tool delete, move, or rename my files?
No. Media Viewer opens folders with mode: "read" — a read-only permission that the browser enforces at the OS level. No write operation of any kind is possible through this tool. For file operations, use the dedicated Bulk Delete, Bulk Move, or Bulk Rename tools.
My images look cropped in grid mode. Can I see them uncropped?
Yes — switch to Masonry layout. In grid mode, images are cropped to a fixed height using object-fit: cover so all cards are the same size. Masonry mode preserves natural proportions and shows the full image. You can also click the 🔍 icon to see any image at full size in a modal.
Auto-scroll stops and starts on its own. Is that a bug?
No — that's the manual-scroll detection working as designed. When the tool detects wheel or trackpad input, it pauses auto-scroll for 1 second to let you look at something, then resumes. If you want to stop auto-scroll permanently, click the ⏸️ Stop scroll button or press Escape.
Some videos won't play even after clicking Play All.
Browsers impose limits on the number of simultaneously active media elements. If you have dozens of videos visible, some may be blocked by the browser's resource manager. Try scrolling so fewer video cards are in view when you click Play All, or hover individual video cards to play them one at a time. Also check that your browser hasn't blocked autoplay in site settings.
My queues disappeared when I reloaded. How do I save them?
Queues are session-only — they live in memory and are cleared on reload. To preserve a queue's contents, switch to the queue tab and click 📥 Download List before reloading. This exports a text file with all filenames and paths that you can reference later.
Can I add the same file to multiple queues?
Yes. Select a file and add it to one queue, then select it again and add it to another. Files can appear in as many queues as you like. The badge shown on the main grid card reflects only the first queue the file belongs to.
The masonry layout looks uneven. Why?
CSS column masonry fills top-to-bottom within each column based on the alphabetical order files were read. Uneven column heights are normal and become more balanced as more images load. If evenness is important, use grid mode instead.
How do I watch a video in fullscreen?
Click the ▶️ icon on any video card to open the modal player with native browser controls. From there, use the fullscreen button in the video player controls (bottom-right of the video). On desktop you can also press F while the video is focused.