fineshyt · archival system

FINE.
SHYT.

Find the keepers in your photo library. Self-hosted, AI-assisted culling that learns your taste — not a generic "good photo" template. Free. Private. Runs on your own machine.

What it does

Three jobs, one workflow.

Point fineshyt at a folder of photos. It looks at each one, sorts the obvious bursts, and asks you to rate the ones it isn't sure about. The more you rate, the better it gets at surfacing photos you'd actually keep.

Technical scoring

Every photo gets a sharpness score (focus check) and an exposure score (clipped highlights/shadows) computed on the full-resolution original. Sort by either, independent of style.

Burst detection

When you fired off ten frames in three seconds, fineshyt groups them, highlights the sharpest, and lets you keep one and reject the rest in a single click.

Personalized ranking

You rate photos 1-5 stars. A model trained on those ratings drifts toward the kind of work you actually like. Photos that match get a MATCH badge in the gallery.

Why fineshyt

Built for photographers who own their workflow.

  • Local-first. Your photos never leave your machine. No cloud upload, no subscription, no rate limits.
  • Learns your taste. Most culling tools score against a generic "good photo" model. fineshyt's preference model is trained on your ratings, so its definition of a keeper is yours.
  • Reads RAW + TIFF. CR2, CR3, NEF, ARW, DNG, RAF, ORF, DNG, plus 16-bit TIFFs — opened natively, not pre-converted.
  • Open source. MIT-licensed, self-hostable, hackable. No vendor lock-in.
Install

One command after Docker is installed.

The fineshyt install assumes Docker Desktop and Ollama are on your machine (both have one-click installers). After that:

git clone https://github.com/qweliant/fineshyt.git
cd fineshyt
make compose       # creates .env, generates a secret, builds, starts

First run, edit .env to point PHOTO_LIBRARY at the folder where your photos live, then re-run make compose. Open http://localhost:4000 when it's done starting up. The first build downloads ML models (~3 GB) — go get coffee.

Photos on multiple drives? Set PHOTO_LIBRARIES in .env instead — colon-separated:

PHOTO_LIBRARIES=/Volumes/Drive1:/Volumes/Backup-2024:/Users/me/Pictures

Each drive gets its own clickable chip in the gallery's Directory field, and you type real paths (/Volumes/Drive1/Wedding-2024) instead of a translated /photos/... path.

Step-by-step Windows guide: install-windows.html · Once it's running, the how-to-use guide walks you through importing photos and rating them · Other platforms: README

FAQ

Quick answers.

Does it modify my photos?
No. The source directory is mounted read-only. fineshyt makes resized JPEG copies for the AI worker, the originals are never touched.

Does it work offline?
Yes, with Ollama as the LLM. The first run pulls models (Ollama's LLaVA + a CLIP image encoder), after that the whole pipeline is local.

Hardware requirements?
16 GB RAM is comfortable. 8 GB works but you'll feel it. Apple Silicon, modern Intel/AMD, or any GPU Ollama supports. SSD strongly recommended if your library is large.

How many photos before it gets useful?
The taste model needs ~30 ratings to start producing useful scores and ~150 to feel sharp. Burst detection and technical scores work on photo one.

Where do I report bugs / suggest features?
GitHub Issues. Or email — see the README.