Skip to content

Repository files navigation

择一 ZeYi — The Zen Photo Culling Tool 快速选片工具

A focused photo culling tool for photographers. Fast, minimal, offline.

English | 中文


English

Features

  • Blazing RAW decoding — LibRaw engine, 700+ camera models, smooth navigation with high-res files
  • Keyboard-driven culling — Mark Pick / Unflag / Reject in grid or full-screen viewer without touching the mouse
  • Burst group detection — Algorithmic grouping with configurable interval (1–10s), one-click group compare
  • Unlimited multi-photo compare — Build a compare pool with any number of photos, view 2–4 panes side by side with synchronized zoom and pan
  • Smart Pre-cull — Detects exposure issues (pure black/white, over/underexposed) and focus issues (blur) as filterable categories; never auto-marks photos
  • JPG+RAW workflow — Batch export picks; move rejects to Recycle Bin
  • 100% offline — All processing on your machine. No accounts, no uploads.

Tech Stack

Layer Technology
Desktop Shell Tauri 2
Frontend React 19 + TypeScript 6 + Vite 8
Backend Rust (rusqlite, rayon, image)
RAW Engine LibRaw
Database SQLite (bundled)
Face Detection SeetaFace (via rustface)

Prerequisites (Windows)

  • Rust 1.77+ with x86_64-pc-windows-gnu toolchain
  • Node.js 20+
  • MinGW-w64 with windres.exe on PATH

Quick Start

git clone https://github.com/johnnyhcm/ZeYi.git
cd ZeYi

npm install
npx tauri dev

Build

npx tauri build

Outputs MSI and NSIS installers to src-tauri/target/release/bundle/.

License

ZeYi is licensed under Apache 2.0.

Third-party components:

  • LibRaw (libraw.dll) — LGPL 2.1 / CDDL 1.0. Dynamically linked; source at libraw.org.
  • WebView2Loader.dll — Microsoft redistributable.
  • SeetaFace model — BSD 2-Clause.

See NOTICE for full attributions.

Privacy

ZeYi processes all data locally and never connects to the internet. See Privacy Policy.


中文

功能

  • 极速 RAW 解码 — LibRaw 引擎,支持 700+ 相机型号,高像素文件依然流畅
  • 快捷键选片 — 缩略图和大图模式单手键盘标记留/待/弃
  • 连拍自动分组 — 算法识别连拍序列,可调间隔阈值(1-10 秒),一键整组对比
  • 任意数量多图对比 — 构建对比池,2-4 张同屏放大,同步缩放平移
  • 智能预筛选 — 检测曝光问题(纯黑/纯白/过曝/欠曝)和对焦问题(模糊),分类呈现,不自动改标记
  • JPG+RAW 同步处理 — 批量导出留用照片;弃用照片移入回收站
  • 完全离线 — 所有处理在本机完成,无需账号,不上传数据

技术栈

层级 技术
桌面框架 Tauri 2
前端 React 19 + TypeScript 6 + Vite 8
后端 Rust (rusqlite, rayon, image)
RAW 引擎 LibRaw
数据库 SQLite (bundled)
人脸检测 SeetaFace (via rustface)

环境要求 (Windows)

  • Rust 1.77+,x86_64-pc-windows-gnu 工具链
  • Node.js 20+
  • MinGW-w64,windres.exe 在 PATH 中

快速开始

git clone https://github.com/johnnyhcm/ZeYi.git
cd ZeYi

npm install
npx tauri dev

构建

npx tauri build

安装包输出到 src-tauri/target/release/bundle/

许可证

择一基于 Apache 2.0 开源。

第三方组件:

  • LibRaw (libraw.dll) — LGPL 2.1 / CDDL 1.0,动态链接,源码见 libraw.org
  • WebView2Loader.dll — Microsoft 可再分发
  • SeetaFace 模型 — BSD 2-Clause

详见 NOTICE

隐私

择一所有数据均在本地处理,永不联网。详见隐私策略


↑ Back to top

About

Immersive local photo culling tool for photographers. Built with Tauri, React, and Rust.

Topics

Resources

Contributing

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages