Map
The Map view plots your geotagged photos on an interactive Leaflet map, so you can see where a set of photos was taken and jump straight to any of them.
How it works
Section titled “How it works”- The map is opened for a given album at
/map/{albumId}, or without an album at/map, in which case it plots every photo you are allowed to see. - Only photos carrying GPS coordinates in their metadata are placed. Photos without coordinates are simply absent from the map; nothing is guessed from the album or the filename.
- Nearby photos are grouped into clusters that split apart as you zoom in. Clicking a single marker opens that photo in the gallery.
- When
map_display_directionis on and the photo records a camera bearing, the marker is rotated to show which way the camera was pointing. - An album’s GPX tracks are drawn over the map as coloured lines, one colour per track, alongside the photo markers.
- Sensitive photos are excluded when
hide_nsfw_in_mapis on. See Sensitive Albums.
Reaching the map
Section titled “Reaching the map”- From the left menu, when
map_displayis enabled. - From an album, which opens the map scoped to that album. Whether the photos of its sub-albums are included as well is decided by
map_include_subalbums. - Press
Escto leave the map and go back where you came from.
Anonymous visitors only get the map when map_display_public is on, and they only ever see the photos they are allowed to see.
Coordinates and place names
Section titled “Coordinates and place names”The raw coordinates stored with a photo can be turned into a readable place name by a reverse-geocoding service, enabled with location_decoding. What is then displayed in the photo details is controlled separately for coordinates and for the decoded name, and separately again for anonymous visitors, so you can show a city name publicly while keeping the exact coordinates private.
By default the lookups go to the public nominatim.openstreetmap.org server, whose usage policy caps them at one request per second. Lychee throttles itself accordingly; LOCATION_DECODING_REQUESTS_PER_SECOND raises that ceiling, and should only be raised if you are not hitting the public server.
Self-hosted reverse geocoding v8
Section titled “Self-hosted reverse geocoding v8”Setting LOCAL_GEO_DECODING_URL in the .env file points Lychee at your own Nominatim-API-compatible endpoint instead of the public server. Requests to it are sent unthrottled, since the rate limit exists only for the shared instance. This is a bring-your-own-service integration: docker-compose.yaml ships a commented lychee_geo_decoding example service to start from, and the diagnostics page reports whether the endpoint answers.
The variable is ignored unless the v8 feature is enabled; without it, Lychee always uses the public Nominatim server.
Settings
Section titled “Settings”| Setting | Description | Default |
|---|---|---|
map_display | Master toggle for the map views. | off |
map_display_public | Allow anonymous visitors to access the map. | off |
map_include_subalbums | Include the photos of sub-albums when opening an album’s map. | off |
map_display_direction | Rotate markers to show the camera bearing when it is available. | on |
map_provider | Tile provider: OpenStreetMap.org, OpenStreetMap.de, OpenStreetMap.fr, or RRZE. All serve OpenStreetMap data. | OpenStreetMap.org |
location_decoding | Resolve GPS coordinates into readable place names. | off |
location_decoding_timeout | Timeout in seconds for a reverse-geocoding query. | 30 |
location_show | Show the decoded place name in the photo details. | on |
location_show_public | Show the decoded place name to anonymous visitors. | off |
gps_coordinate_display | Show the raw latitude and longitude in the photo details. | on |
gps_coordinate_display_public | Show the raw coordinates to anonymous visitors. | off |
hide_nsfw_in_map, under Sensitive Albums, additionally keeps sensitive photos off the map.
Requirements
Section titled “Requirements”Photos must contain GPS data in their EXIF metadata. Most smartphones embed it automatically; cameras usually need a GPS module or a phone pairing. exiftool gives the most reliable extraction, including the camera direction.
