OpenSourcePicks

Open source alternatives to popular software, with live GitHub data

GitHub stats refreshed every day

HomeGallery

Single-binary web gallery for your photo folders, with similar-image search, faces and maps

Visit HomeGalleryGitHubDocumentation

Main features

  • Browses existing folders from several media sources
  • Content-based IDs, so renamed or moved files keep their tags
  • Similar-image search and object detection
  • Face detection and grouping by similar faces
  • Tagging of single or multiple images
  • Reverse geocoding and a map of GPS-tagged photos
  • Search expressions for custom filters
  • Mobile-friendly web app, installable as a PWA
  • Prebuilt binaries for Linux, macOS and Windows plus a Docker image

What HomeGallery does

HomeGallery is a self-hosted web gallery that sits on top of the photo and video folders you already have, for example on a NAS, external drives or copies of a phone’s camera roll. Its author’s aim was fast browsing from a phone and rediscovering forgotten pictures across a whole archive. Files stay the source of truth: HomeGallery identifies each image by a hash of its content, so renaming or moving a file does not lose its tags.

Discovery is the main feature. Similar-image search finds, say, every sunset or food picture without manual tagging, object detection adds searchable labels, and faces are detected and grouped by similarity so you can find family members. GPS-tagged photos get addresses through reverse geocoding and appear on a map. You can tag one or many images at once and build your own filters with a search expression language.

Privacy and the AI API

By default, the AI features are not computed on your server. HomeGallery sends low-resolution preview images to the project’s public API at api.home-gallery.org for similarity, object and face detection, which lets low-powered devices such as a Raspberry Pi use them. The FAQ says the API keeps no images or private data. If you prefer nothing to leave your network, you can run the API server yourself (locally or in Docker) or switch these features off in gallery.config.yml. Decide before the first import, because changing it later needs extra steps.

Self-hosting HomeGallery

Setup is unusually simple. Download a single prebuilt binary for Linux, macOS or Windows, run gallery init --source ~/Pictures, then gallery run server and open port 3000. A Docker image and Docker Compose instructions are also provided, along with recipes for running behind Nginx or Traefik on a subpath. HomeGallery keeps extracted metadata, previews and converted videos in its own storage directory and only needs read access to your media folders. The CLI can also export metadata or a static version of the gallery.

Hosted version

There is no hosted service; a public demo gallery is available.

Limitations

HomeGallery is designed for one user: the README states that all files are served, so it is not a multi-user family library with per-person permissions. It has no upload or phone backup, and no share links. The README describes it as a private spare-time project without warranty, so support comes from the author and community chat. The default use of a public API for AI features may not suit everyone.

Who it suits

HomeGallery suits technically confident individuals who want a quick, phone-friendly way to explore a large personal archive with AI search, starting from a single binary. For multiple users and phone backup, look at Immich; for a read-only gallery without any external calls, see PiGallery2.

Technical details

Built with

  • Node.js
  • TypeScript
  • JavaScript

GitHub topics

  • calculate-previews
  • exif
  • face-detection
  • face-recognition
  • gallery
  • geo-reverse-lookups
  • linux
  • macos
  • mobile
  • mobile-phones
  • open-source
  • photo-gallery
  • photography
  • photos

Reviewed by the OpenSourcePicks editors from the project's repository and documentation. Something out of date? Tell us.