Go to file
Michael Mainguy 85c1479d94 Add comprehensive AI-powered photo analysis with dual-model classification
## Features Added:
- **Dual Model Classification**: ViT (objects) + CLIP (style/artistic concepts)
- **Image Captioning**: BLIP model for detailed photo descriptions
- **Auto-tagging**: Process all photos with configurable confidence thresholds
- **Tag Management**: Clear all tags functionality with safety confirmations
- **Comprehensive Analysis**: 15-25+ tags per image covering objects, style, mood, lighting

## New API Endpoints:
- `/api/classify/batch` - Batch classification with comprehensive mode
- `/api/classify/comprehensive` - Dual-model analysis for maximum tags
- `/api/classify/config` - Tunable classifier parameters
- `/api/caption/batch` - Batch image captioning
- `/api/tags/clear` - Clear all tags with safety checks

## UI Enhancements:
- Auto-tag All button (processes 5 photos at a time)
- Caption All button (processes 3 photos at a time)
- Clear All Tags button with confirmation dialogs
- Real-time progress bars for batch operations
- Tag pills displayed on thumbnails and image modal
- AI-generated captions shown in image modal

## Performance Optimizations:
- Uses cached thumbnails for 10-100x faster processing
- Parallel model initialization and processing
- Graceful fallback to original files when thumbnails fail
- Configurable batch sizes to prevent memory issues

## Technical Implementation:
- Vision Transformer (ViT) for ImageNet object classification (1000+ classes)
- CLIP for zero-shot artistic/style classification (photography, lighting, mood)
- BLIP for natural language image descriptions
- Comprehensive safety checks and error handling
- Database integration for persistent tag and caption storage

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-27 17:05:54 -05:00
.idea Initial Next.js photo gallery application 2025-08-26 13:24:38 -05:00
src Add comprehensive AI-powered photo analysis with dual-model classification 2025-08-27 17:05:54 -05:00
.gitignore Add SQLite database and directory management system 2025-08-26 14:26:55 -05:00
CLAUDE.md Add native Web Share API for photo sharing 2025-08-27 13:04:31 -05:00
next.config.js Add photo scanning with EXIF metadata extraction and thumbnail caching 2025-08-27 08:35:07 -05:00
package-lock.json Add comprehensive AI-powered photo analysis with dual-model classification 2025-08-27 17:05:54 -05:00
package.json Add comprehensive AI-powered photo analysis with dual-model classification 2025-08-27 17:05:54 -05:00
postcss.config.mjs Initial Next.js photo gallery application 2025-08-26 13:24:38 -05:00
README.md Improve directory modal with keyboard navigation and README 2025-08-26 14:03:36 -05:00
tsconfig.json Initial Next.js photo gallery application 2025-08-26 13:24:38 -05:00

Photos Gallery

A Next.js application for displaying and organizing photos.

Prerequisites

macOS CIFS Share Access

If you're running this application on macOS and accessing photos from a mounted CIFS share, you'll need to grant your terminal application full disk access:

  1. Open System PreferencesSecurity & PrivacyPrivacy
  2. Select Full Disk Access from the left sidebar
  3. Click the lock icon and enter your password to make changes
  4. Click the + button and add your terminal application (e.g., Terminal.app, iTerm2, etc.)
  5. Restart your terminal application

This is required because macOS restricts access to network-mounted drives without explicit permission.

Getting Started

npm install
npm run dev

Open http://localhost:3000 in your browser.