Extending the Lychee Landing Page with Custom Menu Items

Lychee is one of the cleanest and most lightweight self-hosted photo management solutions currently available. It combines a modern interface with an easy installation process and offers a surprisingly polished user experience for a self-hosted application. Whether you are running a personal photo archive, a modelling showcase, or a private media gallery, Lychee provides an elegant and fast platform without relying on third-party cloud services.

One of the nice aspects of Lychee is its flexibility. While the default installation already looks great, there are situations where adding small customizations can significantly improve navigation and usability – especially when integrating Lychee into a larger ecosystem such as a forum, blog, or community website.

In my case, I wanted to add additional navigation items directly to the Lychee landing page menu so visitors could quickly access related services like the forum and blog. Since Lychee itself does not currently provide a built-in option for extending the landing page navigation, a simple custom JavaScript solution works perfectly.

The following script waits until the landing page menu has fully loaded and then dynamically injects new menu entries. This approach avoids modifying the core application files directly and makes future updates much easier to manage.

Copy to Clipboard

The script can be included as a separate custom JavaScript file and loaded alongside your Lychee installation. Once active, the additional menu items are automatically appended to the existing landing page navigation without altering the original Lychee source code.

This is a simple but effective way to integrate Lychee more seamlessly into a broader self-hosted platform while keeping the installation clean and update-friendly.