OpenAltFinder
Lychee

Lychee

Self-hosted photo and video gallery for uploading, organizing, and sharing your library.

Screenshot 2026-10-28 at 19-34-12 Lychee v7.png
Screenshot 2026-10-28 at 19-34-20 Tulips · Lychee v7.png
Screenshot 2026-10-28 at 19-34-29 Tulips · Lychee v7.png
1 / 3

Lychee is a self-hosted photo and video management system built on Laravel and Vue. It gives you a fast, modern web gallery with drag-and-drop uploads, albums and nested sub-albums, a full-screen viewer with EXIF and GPS data, a map view, smart albums, tags, ratings, and RSS feeds. Originals are kept untouched while Lychee generates optimised variants and thumbnails, and photos can be captioned, re-dated, downloaded individually or as album ZIPs.

Sharing is granular. Albums can be public, password-protected, embeddable in other sites, or limited to specific registered users with read or write access. The public gallery can be switched off entirely, sensitive albums can be hidden behind an extra click, and multi-user installs get per-album permissions along with invite links and trust levels. Login works with a local password, WebAuthn security keys or biometrics, or OAuth providers such as Google, GitHub, Apple, Microsoft, Keycloak, Authentik, and Nextcloud.

Lychee ships as a Docker image running FrankenPHP with MariaDB, or can be installed on any PHP 8.4+ host with MySQL, MariaDB, PostgreSQL, or SQLite. Media can stay on local disk or move to S3-compatible object storage. The core edition is MIT-licensed; a paid Supporter Edition adds statistics, user groups, watermarking, AES-secured share links, white-labelling, upload quotas, multi-admin support, and a webshop for selling photos.

Frequently Asked Questions

What authentication methods does Lychee support?

Users can sign in with a local username and password, with WebAuthn for passwordless login using a security key or device biometrics, or through OAuth providers. Bundled providers include Google, GitHub, Apple, Microsoft, Amazon, Facebook, Mastodon, Keycloak, Authentik, Authelia, Nextcloud, Kanidm, and Pocket ID. Admins can disable self-registration and invite users with generated links instead.

Can I import an existing photo library into Lychee?

Yes. The php artisan lychee:sync command imports a folder on the server recursively, creating an album for each directory and subdirectory. It supports importing into a specific album, skipping duplicates, importing via symlink instead of copying, and deleting files that no longer exist in the source folder. Regular browser uploads also support drag and drop and chunked uploads for large files.

Does Lychee have an API?

Lychee exposes a REST API under /api/v2, and each instance serves its own OpenAPI documentation at /docs/api. For scripts and external tools you create a personal API token under Settings then Profile, and send it as an Authorization: Bearer header. Token-authenticated requests bypass CSRF checks, while session-based requests need the usual CSRF token.

What are the server requirements for self-hosting Lychee?

Lychee requires PHP 8.4 or newer with the GD, EXIF, PDO, mbstring, and related extensions, plus MySQL, MariaDB, PostgreSQL, or SQLite. The official Docker image runs FrankenPHP and the minimal compose file bundles MariaDB, so a single command starts a working gallery. Production installs should set APP_URL and APP_KEY and sit behind a TLS-terminating reverse proxy such as nginx, Traefik, or Caddy.

What does the Supporter Edition add over the free edition?

The Supporter Edition is the same MIT-licensed codebase unlocked with a licence key obtained through GitHub Sponsors. It adds library and usage statistics, user groups, photo watermarking, AES-encrypted share links, white-labelling, per-user upload quotas, multi-admin support, per-album timeline settings, album tag display, a contact form, personal favourites, custom renaming rules, and a webshop for selling photos.

Looking for contributors

This project is actively seeking help, join the community!

OpenAltFinder Score
85/100
Project Health (50%)
69/100
License (20%)
100/100
Self-hostable (20%)
100/100
Recency (10%)
100/100
How scoring works
Project Details
Platforms
Web
License
MIT
Self hostable
Yes
Repository details
Version
v7.12.1
Created
8/8/2018
Stars
4,330
Forks
384
Open issues
16
Last commit
11/5/2026

Updated 11/6/2026, 8:01:12 AM

View Repository
Repository activity

Get the latest open source alternatives delivered weekly.
Discover tools that give you freedom from proprietary software.

Similar open source alternatives