Damselfly
SHA-256Server-based photo management system with AI face/object recognition, fast search, and keyword tagging. Like Google Picasa but self-hosted and smarter.
Smart Download
Download Download Version
v4.5.3 · 475 MB
Self-hosted photo manager with AI face/object recognition, ultra-fast search, and Picasa-like workflow.
Core Features
- Wide format support: JPG, PNG, HEIC, TIFF, Webp, BMP, DNG/CR2/ORF/NEF (RAW)
- AI face detection, face recognition, object detection & color classification
- Full-text search with multi-phrase partial-word matching, results under 1 sec for 500k images
- Advanced filters: date range, camera/lens, size, orientation, similar images, untagged images
- Non-destructive EXIF keyword tagging via ExifTool (no re-encoding)
What It Can't Do
- •ExifTool required for non-destructive writing (included in Docker image). Offline face recognition model (~200MB) downloads on first use. Windows version may need .NET 7 runtime. RAW preview depends on system codecs; some older RAW formats may not work. Avoid moving photo directory after setup; update path manually if changed.
Use Cases
- Photographers managing large RAW collections with fast search and AI tagging
- Family photo library shared across members, automatic person recognition
- Library admin bulk-tagging images and exporting for social media or stock
Detailed Introduction
Damselfly is a self-hosted digital photo management server designed for large folder-based collections. It focuses on lightning-fast search and AI-powered tagging workflow: detects faces, recognizes people, identifies objects, and classifies colors. Supports JPEG, PNG, HEIC, RAW (DNG/CR2/ORF/NEF) and more. Features include full-text search, advanced filters (date, camera, size, similar images), multi-user with roles, selection basket for export/Wordpress/editing, and a desktop client for local sync. Runs on Windows, Linux, macOS, and Docker. Built with .NET 7 and Blazor WebAssembly.
Troubleshooting & FAQ (2)
TroubleshootingWhy does my Linux build include onnxruntime.dll and libonnxruntime.so, causing a 500MB size increase?
This is a known bug in the onnxruntime package (microsoft/onnxruntime#23077) where Windows DLLs are erroneously included in Linux builds. Affects macOS as well. Workaround: manually remove the unnecessary Windows DLLs after build. For example: find . -name "onnxruntime*.dll" -delete. Track the upstream issue for a permanent fix.
TroubleshootingWhy do I get 'Unable to start Azure service: Value cannot be null' error in Damselfly even though face detection works?
The error is often a red herring. Check your logs for entries like 'Azure Detected X faces' to confirm that the service is actually working. If face detection succeeds despite the startup error, you can safely ignore it. No configuration changes are required.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Install the appropriate package for your distro (dpkg / rpm / AppImage)
Option 1 (recommended): Docker - run 'docker run -d -p 8080:8080 -v /your/photos:/pictures webreaper/damselfly'
Option 2: Download native executable for your OS, extract and run Damselfly.exe (or ./Damselfly on Linux/macOS)
Open browser to http://localhost:8080, follow setup wizard to configure photo folder and database (SQLite or MySQL)
- Option 1 (recommended): Docker - run 'docker run -d -p 8080:8080 -v /your/photos:/pictures webreaper/damselfly'
- Option 2: Download native executable for your OS, extract and run Damselfly.exe (or ./Damselfly on Linux/macOS)
- Open browser to http://localhost:8080, follow setup wizard to configure photo folder and database (SQLite or MySQL)
SHA-256 checksum verified
Checksum extracted from GitHub official Release page
SHA256 Checksum
1c651a341c449da6c049ea1cb32bc4d034565a6130c320e044188c79d5d400adThis checksum is extracted from the GitHub Release page. Verify file integrity after download.
All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.
Open Source Transparency
View GitHub SourceUninstall Info
Docker: stop container, remove image and data volumes. Native: delete the installation folder and remove the database file (default .db in program directory).
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
copyparty
copyparty turns any device into a file server with resumable uploads/downloads using any web browser. Supports HTTP, WebDAV, SFTP, FTP, TFTP, SMB. Only requires Python (2 or 3).
Paperless-ngx
An open-source document management system that turns physical papers into a searchable, organized digital archive. Self-hosted, OCR-powered, and built to eliminate paper clutter forever.
Nextcloud Server
Nextcloud Server is a free, self-hosted productivity platform that puts you in control of your files, contacts, calendars, and communication.