Problem
Cloud Page can list and download files, but there is no way to open most of them in the browser. To look at an image, watch a short video, listen to an audio file, or read a PDF, the user has to download it first. This makes the cloud feel like a file dump rather than a workspace, and it leaves no natural place for per-file actions (share, rename, delete, favorite, comment) to live.
Example: a user opens a folder of holiday photos. Today they download each one to preview it. They should be able to click a photo, see it inline, step through the folder, and act on it from one place.
Proposed solution
Add a workspace file viewer that opens a file inline based on its type, with a consistent actions sidebar around it.
Scope:
- inline rendering for common types: images, video, audio, and PDF
- a shared viewer shell so every file type opens through the same component, with a per-type renderer (this same shell is intended to host the Markdown workspace editor, tracked separately, so it should be built to be extended rather than image/video-only)
- a sidebar with per-file actions: rename, move, delete, download, and space for future actions (share, favorite, comment)
- next/previous navigation within the current folder, so a folder of images behaves like a gallery
- graceful fallback for unsupported types (offer download instead of a broken preview)
- respect the existing path validation and user boundary; the viewer must not expose files outside the user root
Acceptance criteria
Related: builds on the file preview work (Vault-Web/vault-web#262, Vault-Web/vault-web#235). The sidebar is the natural home for sharing (#27), favorites, and comments once those land.
Problem
Cloud Page can list and download files, but there is no way to open most of them in the browser. To look at an image, watch a short video, listen to an audio file, or read a PDF, the user has to download it first. This makes the cloud feel like a file dump rather than a workspace, and it leaves no natural place for per-file actions (share, rename, delete, favorite, comment) to live.
Example: a user opens a folder of holiday photos. Today they download each one to preview it. They should be able to click a photo, see it inline, step through the folder, and act on it from one place.
Proposed solution
Add a workspace file viewer that opens a file inline based on its type, with a consistent actions sidebar around it.
Scope:
Acceptance criteria
Related: builds on the file preview work (Vault-Web/vault-web#262, Vault-Web/vault-web#235). The sidebar is the natural home for sharing (#27), favorites, and comments once those land.