github damongolding/immich-kiosk v0.21.0

latest releases: v0.23.4, v0.23.3, v0.23.2...
3 months ago

0.21.0

Offline mode

Kiosk now supports Offline Mode, allowing assets to be downloaded for viewing without an active connection to Immich.

Why it's useful:

Offline Mode is ideal for setups where maintaining a live connection to Immich might be costly or inefficient.
For example, if your Immich storage is hosted on a NAS with disks that spin down to save power, using Offline
Mode prevents Kiosk from constantly triggering disk spin-ups.

Key Highlights:

  • Offline viewing: View photos without needing a live connection to Immich.
  • Configurable settings: Set limits on asset count, disk usage, and expiration.
  • Persistent caching: Use Docker volume mounts to retain offline assets between container restarts.
  • Offline Mode must be explicitly enabled in config.yaml.

Setup Notes:

  • Use the use_offline_mode=true URL parameter to trigger offline behavior on devices.
  • Only a limited set of URL parameters are supported in Offline Mode (e.g., show_progress, frameless, clock_source).

Limitations:

  • Some features like Album Ordering, Experimental Video, and Like/Hide buttons are unavailable in Offline Mode.

Example Config:

offline_mode:
  enabled: true
  number_of_assets: 500
  max_size: 50mb
  expiration_hours: 24

Read the offline mode docs


Fully Kiosk Browser support

If you use the Fully Kiosk Browser to display Kiosk on a Android device and you have the pro version. You can set the new sleep_dim_screen to true to dim the screen when in sleep mode.

IMG_5977.mov

Read the sleep mode docs


Update to splitview layout

When using layout=splitview, Kiosk will now automatically switch to layout=splitview-landscape if the device or browser is in portrait orientation.

IMG_5974.mov

Demo

Kiosk now has a online demo


require_all_people

The "Require all people" feature allows you to filter images to only
show those where all specified people are present together in the same photo.

Read the require all people docs


Asset owner

Added show_owner which displays the asset owner. Thanks to @koostamas for adding this.


Show Image QR

Added show_image_qr which displays the QR code that links to the asset in Immich next to the metadata.


Added the /image/reload endpoint

The /image/reload endpoint wraps the /image endpoint (which serves a raw image) in
a light html page that auto reloads itself using refresh setting.

Why?

Someone on Reddit asked me to so they could use Kiosk on thier Kindle

Useful if you have an old device that Kiosk can not support.


iframe

Immich Kiosk now supports iframe integration, allowing you to embed custom content directly into your Kiosk display.

Why it's useful:

This feature is perfect for users who want to enhance their Kiosk with additional content—such as local weather dashboards, calendars, or custom informational pages. For example, you can embed a local HTML file showing your smart home stats or a remote webpage with real-time updates.

Read the iframe docs


mute/unmute button

When experimental_album_video is set to true, a mute/unmute button will appear in the menu.

Kiosk will remember your preference using local storage and try to apply it after a refresh.

However, due to browser restrictions, unmuting video requires user interaction. If your saved preference is to have video unmuted, Kiosk will wait for you to interact with the screen before applying that setting.

Thanks to @ngirardin for helping implimenting this feature.


update to http_timeout

Kiosk's frontend will now utilise the http_timeout configuration.
If a Kiosk API endpoint timesouts 3 times in a row Kiosk will reload the browser.


What's Changed

🚀 New Features

⚡ Fixes

📓 Documentation

  • Rename pre_fetch config option to prefetch for consistency by @ngirardin in #378

🔨 Maintenance

New Contributors

Full Changelog: v0.20.2...v0.21.0

Don't miss a new immich-kiosk release

NewReleases is sending notifications on new releases.