Lap is an open-source desktop photo manager and local photo organizer for people who want to browse family albums, find old photos quickly, and manage large personal media libraries offline. It is built as a privacy-focused alternative to cloud photo services: no forced upload, local AI photo search, folder-first workflow, and free to use.
- Website: https://julyx10.github.io/lap/
- Demo: https://youtu.be/RbKqNKhbVUs
- Privacy: PRIVACY.md
Open the latest release page, then download the file that matches your system:
| Platform | Package | Status |
|---|---|---|
| macOS (Apple Silicon) | aarch64.dmg |
Notarized by Apple |
| macOS (Intel) | x64.dmg |
Notarized by Apple |
| Windows 10/11 (x64) | .msi |
Currently unsigned (SmartScreen warning may appear) |
| Ubuntu/Debian (amd64) | amd64.deb |
Linux adaptation and testing are not completed yet |
Screenshot sample images come from Wikimedia Commons.
- No cloud required: keep your library on your own disk instead of uploading it to a hosted service.
- Private by default: processing happens locally, so your photos stay under your control.
- Free to use: no subscription plan or recurring fee.
- Folder-first: work directly with your existing folders, no import step required.
- Built for large libraries: smooth browsing and organization across thousands of photos and videos.
- Browse and filter by date, location, camera, lens, tags, favorites, ratings, and faces(BETA).
- Manage multiple libraries and switch between them quickly.
- Find duplicates and batch move unwanted copies to trash.
- Edit in place with crop, rotate, flip, resize, and basic adjustments.
- Keep folders in sync with filesystem-aware operations and refresh support.
- Use local search tools such as text/image search, similar-image search, face clustering, and smart tags.
- Support more image and video formats such as RAW photo formats, Live Photos, Motion Photos.
- Expand metadata support for standards commonly used in photography workflows, including EXIF, XMP, and IPTC.
Requirements:
- Node.js 20+, pnpm 8+
- Rust stable
- macOS:
xcode-select --install,brew install nasm pkg-config - Linux:
sudo apt install libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf nasm clang pkg-config
Run locally:
# Download AI models
./scripts/download_models.sh
# Windows (PowerShell): .\scripts\download_models.ps1
# Install frontend deps
cd src-vite && pnpm install && cd ..
# Run dev app
cargo tauri dev| Type | Formats |
|---|---|
| Images | JPG, PNG, GIF, BMP, TIFF, WebP, HEIC(macOS) |
| Videos | MP4, MOV, MKV, WebM |
- Core: Tauri 2 + Rust
- Frontend: Vue 3 + Vite
- Data: SQLite
- Media and local search: CLIP, InsightFace, FFmpeg
GPL-3.0-or-later. See LICENSE.

