# Nexus Photos 1.0 — Phase 1 Evidence

Phase 1 delivers the first-party Nexus image library and viewer (not Windows Photos).

## Build

- Version: `0.1.0-poc3`
- Build: `79`

## Scope

- Photo library scan: Pictures, Downloads, Screenshots, Camera Roll (+ subfolders)
- Left nav: Bibliotek, Favoritter, Seneste, Mapper, Billeder, Skærmbilleder, Downloads, Kamera
- Center: thumbnail grid with filename (not Explorer-style)
- Right: metadata / preview panel
- Bibliotek home: Seneste billeder, Favoritter, Største mapper, Nyligt importerede
- Lightbox: dark overlay, Forrige / Næste / Zoom (Fit · 100% · Fill) / Info
- Slideshow: 5 s auto-advance, fullscreen overlay, Esc closes
- Favorites: `%LocalAppData%\NinjaNexus\photos\favorites.json`
- Thumbnail cache: `%LocalAppData%\NinjaNexus\photos\thumbnails\`
- Launcher wiring: `nexus:photos` (`app-nexus-photos` in `apps.manifest.json`)
- Lockdown: allows `nexus-photos`; blocks `microsoft.photos`, `ms-photos:`, `photos.exe` with Nexus redirect message

## Supported formats (POC)

JPG, JPEG, PNG, WEBP, BMP — unsupported formats show a Nexus error message.

## Architecture

| Layer | Type |
|-------|------|
| `NexusPhotosView` | WPF UserControl |
| `NexusPhotosViewModel` | MVVM orchestration |
| `NexusPhotosLibraryService` | Folder scan + search |
| `NexusThumbnailService` | Disk cache, 140–220 px by zoom |
| `NexusImageViewerService` | Lightbox + zoom modes |
| `NexusSlideshowService` | 5 s timer, fullscreen |
| `NexusMetadataService` | File metadata |
| `NexusPhotosFavoritesService` | Local JSON favorites |
| `NexusPhotosWindow` | Thin glass shell (`AllowsTransparency=False`) |

## Screenshot checklist

Capture from a Release build with `--safe-poc` or `--overlay`:

| File | What to show |
|------|----------------|
| `photos-home.png` | Bibliotek home with Seneste, Favoritter, Største mapper, Nyligt importerede |
| `photos-grid.png` | Center thumbnail grid + left nav + search toolbar |
| `photos-viewer.png` | Lightbox with bottom bar (Forrige, Næste, Zoom, Info) |
| `photos-slideshow.png` | Fullscreen slideshow with position indicator |
| `photos-metadata.png` | Right metadata panel with selected image preview |

Store PNG screenshots in this folder next to this README.

## Manual verification

1. Launcher → **Nexus Photos** (pinned `app-nexus-photos`)
2. Bibliotek home shows recent / favorite / folder / import sections when photos exist
3. Navigate Billeder, Downloads, Skærmbilleder, Kamera — grid updates
4. Double-click thumbnail → lightbox; arrow keys and Esc work
5. Diasshow → auto-advance every 5 s; Esc exits
6. Toggle Favorit → persists across restart (`favorites.json`)
7. Local search filters current view by filename / folder label
8. With lockdown active, Windows Photos launch attempt → blocked with Nexus Photos hint

## Not in v1 (v2 roadmap)

- Cloud sync / OneDrive integration
- AI tagging, face recognition, auto albums
- Image editing (crop, rotate, filters)
- RAW / HEIC / GIF / TIFF support
- Video playback in library
- Share / export workflows
- Nexus Console commands (`photos-open`, etc.)

## Windows vs Nexus-owned

| Area | Owner |
|------|--------|
| File enumeration, image decode | Windows (System.IO / WPF codecs) |
| Library UI, nav, search, favorites, viewer, slideshow | Nexus |
| Known photo folders | Windows paths, Nexus labels |
| Thumbnail + favorites storage | Nexus (`%LocalAppData%\NinjaNexus\photos\`) |
