Batch uploads now use top-level URLs (e.g., /my-photos instead of
/b/abc123). Users can name their batch slug or let it auto-generate.
Slug field dynamically shows / prefix for batches, /f/ for single files.
Added slug validation with live feedback and reserved slug protection.
Old /b/ URLs redirect permanently for backward compatibility.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Clicking an image thumbnail opens a full-size overlay instead of
navigating away. Left/right arrows and on-screen buttons cycle
through images. Click backdrop or press Escape to close. Includes
filename and download link in the lightbox footer.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Batch page now shows files as a thumbnail grid (images render as
cover-fit thumbnails, other types show icons). Added /b/{id}/dl
endpoint that streams all batch files as a zip archive.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use presigned R2 URLs with native HTML elements instead of generic
icons for all previewable file types on the download page.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Images show actual thumbnail from R2 (presigned inline URL)
- Video/audio/PDF show type-specific icons
- Use flexbox gap for consistent spacing (no overlap)
- Move filename into card as h2, remove top-level h1
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
GET /f/{id} now shows a file info page with metadata and action buttons
instead of redirecting directly. Previewable files (images, video, audio,
text, PDF) get a "View" button (inline disposition). All files get a
"Download" button. Actual redirects moved to /f/{id}/dl and /f/{id}/view.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>