Navigates S3 CommonPrefixes as folders. Breadcrumb path updates as you drill down. Prefix-aware — works with any bucket structure.
// Delimiter="/" on list_objects_v2 // CommonPrefixes → virtual folders
aws s3 ls
$aws s3 ls s3://my-bucket/ PRE photos/ PRE videos/ PRE backups/$aws s3 ls s3://my-bucket/photos/2024-01-15 10:22:01 3354624 IMG_4821.jpg2024-01-15 10:22:04 2936218 IMG_4822.jpg PRE vacation-2024/ ← BucketLens does this for you
03 / lightbox
lightbox + video playback
Full-screen viewer for images and video. Arrow key navigation, ESC to close. Videos play inline with native controls.
// mp4 · webm · mov · avi · mkv // images proxied through Flask
Drag files onto the browser window to upload to the current bucket prefix. Or use the file picker. Multi-file supported. Progress toast shows upload status.
// PUT directly to your bucket // multipart/form-data → boto3
upload log
# uploading to my-bucket/photos/uploading photo-001.jpg [████████████████████]100%uploading photo-002.jpg [████████████████████]100%uploading video-trip.mp4 [████████████████████]100%✓ 3 files uploaded to my-bucket/photos/
05 / delete
2-step delete with audit log
Delete requires two explicit confirmations and typing the bucket name. Every deletion is logged to SQLite and plaintext. Because rm -rf happens.
Azure Blob Storage and GCP Cloud Storage support in progress. Same UI, different provider. Switch clouds from the provider selector — no config changes needed.