Skip to content

LRBridge v0.5.1 — Lightroom Context API and UI Polish

Choose a tag to compare

@ninoleto ninoleto released this 08 Jul 00:32

LRBridge v0.5.1 — Lightroom Context API and UI Polish

This is a stable Windows portable release of LRBridge.

LRBridge is a local bridge application for Adobe Lightroom Classic, designed to make Lightroom easier to control from external tools, web interfaces, button panels, encoders, Bitfocus Companion, browser devices, scripts, and automation systems.

This release builds on v0.5.0 and adds the new Lightroom context API, updated Web Controller help, app UI polish, a new app icon, and clearer troubleshooting for Lightroom timing and startup behavior.


Main purpose

LRBridge connects Lightroom Classic with external control workflows.

It is built for users who want to control Lightroom from:

  • Bitfocus Companion
  • Stream Deck-style controllers
  • Loupedeck / Razer Stream Controller setups
  • Custom web interfaces
  • Tablets, phones, touchscreens, and browser-capable devices
  • Local HTTP commands
  • PowerShell, curl, scripts, and automation tools
  • Button, knob, and encoder-based workflows

The purpose is to make Lightroom control faster, more flexible, and more suitable for real production workflows.


New in v0.5.1

Lightroom context API

LRBridge now includes a new context endpoint:

http://127.0.0.1:17891/context

This endpoint can report:

  • active Lightroom module, for example library or develop
  • selected photo key or photo path
  • context change counter
  • Develop value change counter
  • context heartbeat timestamp

Example response:

{
"ok": true,
"queueLength": 0,
"activeModule": "develop",
"selectedPhotoKey": "photo-path-or-id",
"contextCounter": 123,
"contextChangedAt": 1783387000000,
"developCounter": 45,
"developChangedAt": 1783387000500,
"lastHeartbeatAt": 1783387000500
}

This allows external tools, browser controllers, scripts, and the native Companion module to detect when Lightroom changes photo, module, or Develop values, and then refresh feedback.

Context fields are also included in:

http://127.0.0.1:17891/status


Included in this release

This portable package includes:

  • LRBridge.exe, main Windows portable application
  • Web Controller, browser-based controller interface available from localhost and LAN
  • Lightroom Classic plugin, Lightroom-side communication plugin
  • Local HTTP API for external control
  • Lightroom context API for detecting active module, selected photo changes, and Develop value changes
  • Visible slider feedback in the Web Controller
  • Auto Tone and Auto White Balance cooldown after slider movement
  • config/settings.txt, editable polling-rate configuration
  • Bitfocus Companion HTTP Builder, helper for creating Companion HTTP actions
  • Updated README documentation
  • Updated Web Controller Help page
  • Updated app icon, tray icon, and Windows executable icon
  • Development context documentation for project continuation

Portable installation

No installer is required.

  1. Download the ZIP file.

  2. Extract it to a writable folder.

Recommended locations:

Documents\LRBridge

Desktop\LRBridge

Avoid extracting to:

C:\Program Files

  1. Run:

LRBridge.exe

  1. Open Adobe Lightroom Classic.

  2. Go to:

File > Plug-in Manager

  1. Click Add.

  2. Browse to the extracted LRBridge folder.

  3. Select the Lightroom plugin located inside the lightroom folder:

lightroom\LRBridge.lrplugin

  1. Enable the plugin.

After the plugin is added, LRBridge can communicate with Lightroom Classic while LRBridge.exe is running.

Important: make sure Lightroom is loading the plugin from the same LRBridge folder that is currently running. If you tested older builds before, remove old LRBridge plugin entries from Plug-in Manager and add the plugin from the current extracted folder.


Web Controller

LRBridge includes a browser-based Web Controller.

After running LRBridge.exe, open the controller on the same computer:

http://127.0.0.1:17892/

The Web Controller can also be opened from another device on the same local network using the Windows computer's LAN IP address:

http://YOUR-COMPUTER-IP:17892/

Example:

http://192.168.1.50:17892/

Windows Firewall may ask for permission the first time LRBridge runs. Allow access if you want to use the Web Controller from other devices on the LAN.

The Web Controller can move Develop sliders, reset individual sliders, run supported Lightroom actions, and show polling-based feedback values for visible sliders.


Bitfocus Companion support

LRBridge can be used with Bitfocus Companion in two ways.

1. Companion Generic HTTP Requests

Generic HTTP control works with tools already integrated in Companion.

Use Companion's built-in HTTP request tools to map LRBridge commands to Companion buttons, pages, and supported hardware controllers.

The included Companion HTTP Builder provides copy-ready commands for slider adjustment, slider reset, and Lightroom actions:

http://127.0.0.1:17892/bitfocus-companion-cheatsheet

2. Native LRBridge Companion module

A native Bitfocus Companion module for LRBridge exists as a separate project:

https://github.com/ninoleto/companion-module-ninoleto-lrbridge

The native module gives Companion users ready-made LRBridge actions, so they do not need to manually create every command as a Generic HTTP request.

The native module is not bundled inside this LRBridge ZIP release. It is maintained separately, so LRBridge can stay focused on Lightroom control and the local HTTP API, while the Companion module can focus on clean Companion integration.

Both options can be used depending on the setup:

  • Use Companion Generic HTTP Requests for built-in Companion tools and manual control.
  • Use the native LRBridge Companion module for cleaner ready-made actions.

LRBridge v0.5.1 exposes context fields through /status and /context. The native Companion module can use these fields to detect when Lightroom changes active module, selected photo, or Develop values, and then refresh Companion variables or slider feedback.


Lightroom feedback

The Web Controller can show current Lightroom slider values below supported sliders.

Feedback works for slider changes made from the Web Controller and for slider changes made directly inside Lightroom.

Feedback is polling-based, not true native realtime feedback. Small delays are normal, especially while moving sliders quickly.


Lightroom context detection

LRBridge v0.5.1 adds polling-based Lightroom context detection.

This can detect:

  • Lightroom module change, for example Library to Develop
  • selected photo change
  • Develop value changes
  • manual slider changes inside Lightroom
  • manual slider resets inside Lightroom

This is useful for external controllers because it gives them a clean signal that feedback should be refreshed.

Important:

  • Context detection is polling-based.
  • It is not a native realtime Lightroom event stream.
  • Small delays are normal.
  • Lightroom plugin polling must be running.

Auto Tone and Auto White Balance cooldown

Lightroom Classic can ignore Auto Tone and Auto White Balance commands for a short time after Develop sliders are changed.

LRBridge handles this in the Web Controller by temporarily disabling Auto Tone and Auto White Balance after slider movement. This avoids sending those commands while Lightroom is still internally processing recent slider changes.

This is a Web Controller usability workaround for Lightroom timing behavior, not a backend API change.


Known issue: Lightroom sometimes does not respond to Web Controller or Companion commands

For LRBridge to work properly, Lightroom Classic should be in Library mode when LRBridge starts. LRBridge normally switches Lightroom to Library automatically on startup.

In rare cases, especially after a Lightroom crash, plugin reload, problematic photo file, or on slower computers, this automatic switch may not happen.

If LRBridge is running but Lightroom sometimes does not respond to Web Controller or Bitfocus Companion commands, switch Lightroom manually to Library, then back to Develop, and try again.

Search keywords: Lightroom Classic not responding to external controller, Lightroom Web Controller commands not working, Bitfocus Companion Lightroom commands not working, LRBridge Lightroom not reacting, Lightroom switch Library to Develop fix.


App UI changes in v0.5.1

This release also includes small application polish:

  • new LRBridge app icon
  • updated tray icon
  • updated Windows executable icon
  • HTTP Builder button inside the LRBridge app
  • Ko-fi support button opens in the system browser
  • non-clickable HTTP API port text in the app window
  • cleaner button layout
  • updated Web Controller Help page

Support development

LRBridge is developed as an independent project.

If this tool is useful to you and you want to support further development, testing, and improvements, you can leave a donation here:

Support LRBridge development on Ko-fi: https://ko-fi.com/ninoleto

Support is optional, but greatly appreciated.


Notes

Current known limitations:

  • Lightroom plugin polling must be running.
  • Web Controller feedback is polling-based, not true realtime.
  • Lightroom context detection is polling-based, not true realtime.
  • Auto Tone and Auto White Balance need a short cooldown after slider movement because of Lightroom timing behavior.
  • Native Companion module lives in a separate GitHub repo.
  • /get, /set, /last-result, and WebSocket input remain experimental.
  • Windows is the primary packaged and tested target.
  • No macOS package is currently provided.

This release is intended for users who want a practical local bridge between Lightroom Classic and external control workflows.

Feedback, testing reports, bug reports, and ideas are welcome.