Skip to content

Latest commit

 

History

History
44 lines (30 loc) · 1.25 KB

File metadata and controls

44 lines (30 loc) · 1.25 KB

Photos

Image viewer with gallery browsing, thumbnail generation, slideshow mode, and zoom/pan.


Features

  • Grid view of images in a directory with lazy-loaded thumbnails
  • Click to open full-size with zoom and pan
  • Thumbnail generation via canvas resize with LRU cache (max 200 entries)
  • Supports PNG, JPG, GIF, WebP, BMP, SVG
  • Keyboard navigation (arrow keys between images)
  • Fullscreen mode
  • EXIF metadata display (date, camera, ISO, aperture, shutter speed)
  • Basic image operations (rotate, delete)

Architecture

PhotosApp (React)
├── PhotoGrid (thumbnail gallery with IntersectionObserver lazy load)
├── PhotoViewer (full-size image with zoom/pan controls)
├── PhotoToolbar (nav arrows, zoom, rotate, delete, fullscreen)
├── MetadataPanel (EXIF data display)
└── SlideshowPlayer (auto-advance with configurable interval)

Uses the getThumbnail() function from fileThumbnails.ts which caches resized versions (max 200 entries, 256px max dimension) and renders them via <canvas> drawImage.


Related



← Back: Documentation Index