Gallery for PhotoPrism: an Android client that reads your library but never syncs it
📸 A convenient Android gallery for your PhotoPrism library with plenty of useful features
At a glance
- What is it?
- Radiokot's Kotlin app gives PhotoPrism users a native Android gallery with search bookmarks, mTLS and SSO support, and an extension catalog. It is a viewer and an uploader, not a sync client, and that boundary decides who should install it.
- Who is it for?
- Adopt Gallery for PhotoPrism if you already run a PhotoPrism instance, want a native Android timeline with configurable search and bookmarks, and accept that content sync is out of scope by design. Skip it if your workflow depends on two-way sync or on web app features the README says are not supported, and skip it if you are on an old PhotoPrism release, since the README only confirms compatibility with the July 28, 2026 build and calls older versions partial.
- Can I use it commercially?
- Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
- Is it still maintained?
- Yes. The repository last received commits 1 day ago.
- What is it written in?
- Mainly Kotlin, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What a self-hosted PhotoPrism library looks like on a phone without this app
PhotoPrism is a self-hosted photo management server. You reach its web interface through a browser, and on a phone that means a mobile web page rather than a native gallery. The README frames this app as bringing a convenient mobile gallery experience for PhotoPrism, and the feature list reads like a direct answer to browser friction: a content timeline with five grid size options grouped by days and months, a timeline scroll that jumps to a specific month, and a full-screen slideshow with five speed options. The intended user is someone who already runs PhotoPrism and wants to browse, search, share and occasionally upload from an Android device without opening a browser tab. It is not for people who have not set up PhotoPrism, and it is not a local camera roll replacement. The README states plainly that the gallery is not intended to sync content with the library, and points to a separate app, Autosync, for that job. That single sentence defines the product's scope more than any feature bullet.
How the app talks to a library: connections, auth and what it does not store
The app is a client, so the data flow is one direction at read time: the app queries your PhotoPrism server and renders the timeline, search results and media. The connection layer is where most of the engineering effort shows. The README lists support for both private and public libraries, HTTP basic auth, mTLS (mutual TLS), and SSO providers such as Authelia and Cloudflare Access, with a separate wiki page for each. It also advertises an endless session without the need to re-enter the password. For anyone running a library behind an identity-aware proxy, that combination is the difference between usable and unusable, because a browser-based flow through Cloudflare Access on a phone is awkward at best. The README does not describe how tokens or credentials are stored on the device, and I cannot confirm that from the material provided. Treat that as something to check in the source before putting the app in front of a library you care about. The Kotlin codebase and the Koin dependency injection topic suggest a conventional modern Android architecture, but the README does not document module boundaries, so I will not guess at them.
Search bookmarks and the live photo viewer are the parts that stand out
Two features are more than a port of the web UI. The first is configurable search with search bookmarks, which let you save a search configuration and apply it later. The README links to wiki pages titled How to search the library and How to use search bookmarks. In practice this turns recurring queries into one-tap views, which is the kind of thing a mobile gallery needs because typing filters on a phone keyboard is slow. The second is an enhanced live photo viewer that the README says works best with Samsung and Apple shots. Live photos are a format-level problem, not a UI problem, and the phrasing suggests the viewer reconstructs the motion component rather than just showing a still. The README does not explain the mechanism, so the honest summary is that the feature exists, is tuned for two vendors' capture formats, and its behaviour on other sources is undocumented. There is also basic TV compatibility for browsing and searching the timeline with a remote control, with a note that it is not available in Google Play on TV and must be installed as an APK. That is a real constraint, not a footnote.
Getting it running: install paths and the extension catalog split
There is no build or server setup in the README, because this is a client app. Installation is the setup. The README offers four paths: an APK from the latest GitHub release, Obtainium, F-Droid, and Google Play. The Google Play build, per the README, has no extension catalog, while the APK and F-Droid builds do. That distinction matters because the extensions are the most distinctive part of the app. The README lists two: Memories, described as a daily collection of photos and videos from the same day in past years, and a photo frame widget that shows random photos from your library on the home screen. If you install from Google Play, you give those up. The app runs on Android 5.0 and up. For library connection, the README points to a wiki connection guide with examples of valid URLs and separate pages for mTLS and SSO. Those wiki pages are where the actual configuration keys and URL formats live; the README itself does not reproduce them, so plan to read the wiki before your first connection attempt rather than after it fails.
The no-sync decision is a design boundary, not a missing feature
The README is explicit: the gallery is not intended to sync content with the library, and it recommends Autosync for that. This is the case where the app is the wrong tool. If your workflow is offloading the camera roll to PhotoPrism automatically, or keeping a local copy mirrored with the server, this app will not do it and is not trying to. Importing exists, through sharing and from the app, per the 1.46.0 release note titled Import from the app, but import is a deliberate action, not a background sync loop. There is a second boundary worth naming: the README says the app does not support all the official web app functionality. It does not enumerate what is missing, so you cannot audit the gap from the README alone. If a specific PhotoPrism feature is central to how you work, check whether this client exposes it before switching your phone habits to it. Neither limitation is a defect. They are the shape of the product, and the README states them rather than hiding them.
Compatibility with PhotoPrism server releases is the risk to price in
The README confirms the gallery works with the PhotoPrism release of July 28, 2026, and says compatibility with older PhotoPrism versions may be partial. That is a narrow confirmed window. PhotoPrism is a self-hosted server that users upgrade on their own schedule, so a client that pins its confirmed compatibility to a specific release tag creates a real upgrade-coupling problem: if your server is older, you are in the partial-compatibility zone with no documented list of what breaks. The app itself is actively maintained, with releases 1.46.1, 1.46.0 and 1.45.0 dated within weeks of each other in the supplied material, and 1.46.1 is described as an error handling fix. Frequent releases are good for fixes, but they also mean the client moves while your server may not. Before adopting, check your PhotoPrism version against that release tag. If you are several releases behind, upgrade the server first or accept that some screens may misbehave.
Alternatives: the PhotoPrism web app and a general sync tool
The most direct alternative is the PhotoPrism web interface itself. It is always in step with your server version, supports the full feature set by definition, and requires no install. The difference in approach is that it is a browser page: no home screen widget, no native share sheet integration, no TV remote browsing, and no live photo viewer tuned for phone capture formats. A second alternative is the path the README itself names, Autosync, which solves a different problem. Autosync moves files between the phone and the server; it does not render a PhotoPrism timeline or run server-side searches. Choosing between them is not a comparison of quality, it is a question of whether you want a viewer or a transfer tool, and some users will want both. What this app adds over the web UI is the native Android surface: sharing to Gmail or Telegram, deleting items without archiving them first, the slideshow, and the two extensions. What it gives up is the completeness of the web app and any guarantee of version parity.
Licence, maintenance and what to verify before you commit
The project is GPL-3.0. If you only install the app, the licence is mostly a distribution question rather than a daily concern. If you fork it, redistribute it, or ship a modified build, GPL-3.0 obligations attach to your distribution, and that is a question for your own counsel rather than something I can settle here. The licence also means the app cannot be relicensed into a proprietary product by a downstream party, which is worth knowing if you are evaluating it as a base for internal tooling. On maintenance cost: the supplied material shows a steady release cadence and a changelog that includes small fixes like the 1.46.1 error handling change, which suggests the maintainer is responsive. There is no published support commitment, and the app depends on a server project with its own release schedule, so the practical maintenance task for a user is tracking two version numbers instead of one. Verify three things first: your PhotoPrism server version against the confirmed July 28, 2026 release, whether you need the extension catalog (which rules out the Google Play build), and whether your authentication setup is covered by the mTLS, basic auth or SSO wiki pages. If all three line up, the install is short. If any of them does not, the web interface remains the safer default.
Editorial conclusion
Adopt Gallery for PhotoPrism if you already run a PhotoPrism instance, want a native Android timeline with configurable search and bookmarks, and accept that content sync is out of scope by design. Skip it if your workflow depends on two-way sync or on web app features the README says are not supported, and skip it if you are on an old PhotoPrism release, since the README only confirms compatibility with the July 28, 2026 build and calls older versions partial. Before installing, verify your PhotoPrism version against that release tag and decide whether you need the extension catalog, because the Google Play build does not include it while the APK and F-Droid builds do.
Community notes