inital commit

This commit is contained in:
2025-12-22 19:16:14 +01:00
parent d1ecd61f74
commit 0a9e63443d
3 changed files with 1000 additions and 2 deletions

116
README.md
View File

@ -1,3 +1,115 @@
# media-slideshow
# 📸 Media Slideshow
A client-side web application for viewing photos and videos
A lightweight, privacy-focused web application for viewing photos and videos in a beautiful slideshow format. All processing happens locally in your browser - no uploads, no servers, no tracking.
![License](https://img.shields.io/badge/license-MIT-blue.svg)
![HTML5](https://img.shields.io/badge/html5-%23E34F26.svg?style=flat&logo=html5&logoColor=white)
![JavaScript](https://img.shields.io/badge/javascript-%23323330.svg?style=flat&logo=javascript&logoColor=%23F7DF1E)
## ✨ Features
- 🖼️ **Fullscreen Display** - Images and videos fill your entire screen
- 📅 **EXIF Data Extraction** - Automatically reads capture date and time from photos
- 📍 **GPS Location Links** - Click to view photo locations on Google Maps (satellite view)
- 🔍 **Image Zoom** - Mouse wheel zoom (1x - 5x) with pan support
- ⌨️ **Keyboard Navigation** - Arrow keys or `<` `>` keys to navigate
- 📂 **Folder Overview** - Virtual screens for easy navigation between albums
- 🔒 **100% Private** - All processing happens locally in your browser
- 💾 **Offline Ready** - Download and use completely offline
- 📱 **Responsive** - Works on desktop, tablet, and mobile devices
## 🎨 Supported Formats
### Images (12 formats)
- **JPEG** - `.jpg`, `.jpeg`
- **PNG** - `.png`
- **GIF** - `.gif`
- **WebP** - `.webp`
- **AVIF** - `.avif`
- **HEIC/HEIF** - `.heic`, `.heif` (Apple format)
- **BMP** - `.bmp`
- **TIFF** - `.tiff`, `.tif`
- **SVG** - `.svg`
### Videos (12 formats)
- **MP4** - `.mp4`
- **MOV** - `.mov` (QuickTime)
- **AVI** - `.avi`
- **MKV** - `.mkv` (Matroska)
- **WebM** - `.webm`
- **M4V** - `.m4v`
- **WMV** - `.wmv` (Windows Media)
- **FLV** - `.flv` (Flash Video)
- **MPEG** - `.mpeg`, `.mpg`
- **3GP** - `.3gp` (Mobile)
- **OGV** - `.ogv` (Ogg Video)
*Note: Both uppercase and lowercase file extensions are supported*
## 📁 Folder Structure
Organize your media files with numeric prefixes for automatic sorting:
```
media/
├── 01_Vacation_Hawaii/
│ ├── IMG_001.jpg
│ ├── IMG_002.jpg
│ └── video_001.mp4
├── 02_Family_Reunion/
│ ├── photo1.jpg
│ ├── photo2.jpg
│ └── celebration.mov
└── 03_Weekend_Trip/
├── DSC_0001.jpg
└── sunset.mp4
```
**Rules:**
- Folders should have numeric prefixes: `01_`, `02_`, `03_`, etc.
- Files within folders are sorted alphabetically by filename
- The prefix is removed in the display (e.g., `01_Vacation_Hawaii``Vacation Hawaii`)
## 🎮 Controls
| Key | Action |
|-----|--------|
| `←` or `<` | Previous media |
| `→` or `>` | Next media |
| **Mouse Wheel** | Zoom in/out (images only) |
| **Click Image** | Toggle zoom on/off |
## 🛠️ Technical Details
### Architecture
- **Single HTML File** - Entire application in one self-contained file
- **No Dependencies** - Only uses EXIF.js CDN for metadata extraction
- **Client-Side Only** - No backend, no server, no data transmission
- **File System Access API** - Uses browser's native folder selection
### Browser Compatibility
- ✅ Chrome/Edge (recommended)
- ✅ Firefox
- ✅ Safari
- ✅ Opera
*Note: Requires a modern browser with File System Access support*
### Privacy & Security
- 🔒 All files stay on your computer
- 🚫 No data is uploaded to any server
- 🔐 No tracking or analytics
- 💾 Can be used completely offline
- 🌐 No external dependencies (except EXIF.js CDN)
## 📋 Use Cases
- **Photo Albums** - View vacation photos with date and location info
- **Video Collections** - Watch family videos in sequence
- **Photography Review** - Review EXIF data and GPS locations
- **Offline Presentations** - Present media without internet connection
- **Privacy-Conscious Viewing** - Keep your media completely private
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.