julyx10/lap — An offline-first photo manager for large local libraries
julyx10/lap — 대용량 로컬 사진 보관함을 위한 오프라인 우선 사진 관리자
Lap은 기존 사진 폴더를 그대로 관리하는 오픈소스 데스크톱 사진 관리자입니다. 사진을 클라우드에 올리지 않고 로컬 AI 검색과 얼굴 기능을 쓰며, 10만 개 이상의 파일을 포함한 라이브러리 탐색과 정리를 지원합니다. 컬렉션·태그 같은 정리 정보는 원본 파일이 아니라 Lap의 로컬 데이터베이스에 저장됩니다.
- 주제
AI 요약
Lap은 사진을 자체 저장소로 가져오도록 강제하지 않고, 사용자가 이미 보유한 폴더를 직접 탐색하고 정리하는 오프라인 우선 사진 관리자입니다. 클라우드 계정이나 업로드 없이 사진·동영상을 관리하며, macOS, Windows, Linux에서 사용할 수 있습니다.
탐색과 정리
날짜, 폴더, 위치, 카메라, 렌즈, 태그, 평점, 얼굴을 기준으로 라이브러리를 살펴봅니다. 조건을 저장하는 Smart Albums, 지도 보기, 컬렉션과 태그, 중복 파일 정리 기능도 제공합니다. RAW와 JPEG·HEIC 짝은 한 항목으로 표시하고, Apple Live Photos와 Google Motion Photos의 재생도 지원합니다. 60종 이상의 이미지·RAW·동영상 형식을 다루며, 비교 뷰어와 기본 편집 도구도 포함합니다.
로컬 AI와 대용량 라이브러리
텍스트 검색, 이미지 유사도 검색, 피사체 검색, 얼굴 묶기 같은 AI 기능은 사용자 컴퓨터에서 실행합니다. 다국어 검색은 50개가 넘는 언어를 지원합니다. 프로젝트는 10만 개 이상의 파일을 보유한 라이브러리에서도 원활한 탐색과 정리를 목표로 합니다.
파일과 정리 정보의 차이
EXIF에 들어 있는 촬영 날짜, 카메라, 렌즈, GPS, 방향 정보는 파일에서 읽습니다. 반면 컬렉션, 태그, 댓글, 즐겨찾기, 평점, 선별 상태, Smart Albums 규칙, AI·얼굴 데이터와 썸네일은 Lap의 SQLite 데이터베이스나 설정에 저장합니다. 이 정보는 파일을 Lap 밖으로 복사하거나 옮겨도 따라가지 않으며 다른 앱에서 자동으로 사용할 수 없습니다. 다른 프로그램에서 파일 이름이나 위치를 바꾸면 Lap에만 저장된 정리 정보가 영향을 받을 수 있으므로, 해당 정보를 활용한다면 Lap 안에서 파일을 이동·이름 변경하고 사진과 함께 데이터베이스·설정도 백업해야 합니다. 데이터베이스를 삭제해도 원본 사진은 삭제되지 않습니다.
구현과 설치
앱은 Tauri와 Rust를 기반으로 하며, 화면은 Vue·Vite·Tailwind CSS로 구성합니다. 이미지·동영상 처리에는 LibRaw, libheif, FFmpeg 등을 쓰고, 로컬 AI 추론에는 ONNX Runtime을 사용합니다. macOS는 Homebrew나 DMG, Windows는 MSI, Linux는 DEB와 AppImage 설치를 지원합니다. 라이선스는 GPL-3.0-or-later입니다.
원문: GitHub / 번역·요약: Trawling