memories
Fast, modern and advanced photo management suite. Runs as a Nextcloud app.
Memories is a photo and video management app that runs on top of Nextcloud, a self-hosted file storage platform. If you already have a Nextcloud server set up, you install Memories as an add-on app from the Nextcloud app store, and it transforms that server into something closer to a private Google Photos. You keep all your files on your own hardware or server, and no photos are sent to any third-party cloud service.
Once installed, Memories organizes your photos and videos into a timeline sorted by the date each photo was actually taken, reading that information from the file's metadata. You can jump backward in time to see what you were doing on a particular date, browse photos on a map, create albums to group things together, and share photos with people who do not have a Nextcloud account. The app also has optional AI-powered tagging that can group photos by recognized faces or objects, though this relies on separate Nextcloud add-ons to work.
Video playback is handled by a small companion program written in Go that transcodes videos on demand, which helps with compatibility across different browsers and devices. The app works in a browser on any device, and there is also an Android client available on Google Play and F-Droid. For automatic photo uploads from a phone, the standard Nextcloud mobile apps handle that part.
The repository is organized as a monorepo: the PHP backend, the Vue-based frontend, the Go video transcoder, and the Android app all live in separate subdirectories. The project is licensed under the AGPLv3, which means the source code must remain open if you distribute or host it. A live demo is available at the project website for anyone who wants to try it before installing.