A high-performance, zero-server, local AI media management tool that runs entirely in your browser using WebGPU, Transformers.js, and DruidJS.
- Semantic Search: Find photos and videos by description (e.g., "surfing at sunset", "golden retriever puppy") using multimodal AI.
- Video Support: Supports MP4 and WEBM files. Automatically extracts thumbnails for embedding and visualization.
- Privacy First: No media is uploaded. No server involved. Everything happens locally on your device.
- WebGPU Powered: Blazing fast embeddings and projections using your GPU.
- Infinite Canvas: Explore thousands of media files in a fluid, 2D map.
- Advanced Projections: Switch between UMAP, t-SNE, PCA, Isomap, LLE, MDS, Sammon, and TriMap in real-time.
- Cluster Visualization: Visually similar media are automatically grouped and colored using k-means clustering.
- Smart Caching: Embeddings are cached in IndexedDB for instant re-opening of previously processed folders.
- Language: TypeScript (Strict)
- AI Engine: Transformers.js (v4+)
- Build Tool: Vite (v8+ with Rolldown)
- Projections: DruidJS
- Deployment: Cloudflare Pages
index.html — Main application entry & UI
src/
app.ts — Core application logic & event handling
db.ts — IndexedDB storage management
embeddings.ts — AI model normalization & vector extraction
similarity.ts — Vector similarity search algorithms
types.ts — Shared TypeScript interfaces
# Install dependencies
npm install
# Start dev server
npm run dev# Production Build
npm run build
# Deploy to Cloudflare Pages (Manual)
npm run deployBuilt with ❤️ for privacy and high-performance web computing.