Publish Lightroom photos to a self-hosted PicPeak gallery
Connect Lightroom Classic to PicPeak, publish client galleries and bring proofing ratings back to your RAW files.
The Lightroom PicPeak Plugin sends photos from Lightroom Classic to a self-hosted PicPeak client gallery and brings the client’s selections back for editing. I wrote the initial implementation. This guide follows the current workflow in the PicPeak repository.
Updated September 2026: the connection now goes through PicPeak Overview and a token stored in the operating system keychain. The workflow also covers importing client ratings and returning finished edits to their proofs.
Requirements
- Lightroom Classic on Windows or macOS
- A PicPeak server with the v1 API enabled
- An account allowed to create API tokens
- Local RAW files if you want to import proofing selections
Importing selections needs a server that supports GET /api/v1/events/:id/photos. Older servers may support exporting and publishing but not the importer.
1. Download and install
Download or clone the current plugin into a permanent folder. In Lightroom Classic, open File → Plug-in Manager → Add and choose picpeak-plugin.lrplugin.
The plugin runs from source; there is no build step. If you update its files, click Reload Plug-in in the Plug-in Manager.
2. Connect to PicPeak
Open Library → Plug-in Extras → PicPeak Overview and choose Config. Enter your server URL and click Sign in….
The plugin exchanges your password for an API token and stores the token in the operating system keychain. The password is not kept. You can revoke tokens in PicPeak under Settings → API Tokens.
With SSO or reCAPTCHA, use Advanced and paste a manually created token with the admin scope. The connection documentation covers the different server configurations.
3. Export or publish a gallery
For a one-off delivery, select the photos and use File → Export → PicPeak Exporter. Choose the target event, set the format and size of the rendered images, and export.
For a Lightroom collection you keep adding to, use the PicPeak publish service. Note which event you publish to: you need the same event later when you return the edited photos.
For proofing, upload JPEGs whose filenames can be matched to the original RAW files. If clients should use colour labels, enable them in the event’s feedback settings.
4. Import client selections
Once the client has marked their choices, open PicPeak Importer. Select the event and the folder that holds your RAW files, then choose either all files or only the marked selections.
The importer matches the local files, applies ratings and colour labels, and collects the photos in Lightroom. The default conflict policy is Fill empty only, so existing values are kept. Only change the policy if PicPeak’s selections should overwrite your own.
On a multi-camera shoot, make the filenames unique before uploading. The matching guide explains camera prefixes and the optional fallback that matches the number at the end of the filename. Ambiguous matches are reported, not guessed.
5. Return the finished edits
Edit the matched RAW files and export them to the same event they came from. The plugin uses the stored PicPeak photo ID to replace each proof and keeps its ratings, labels, comments and position in the gallery. Renaming the photo in Lightroom does not break this link, because it is based on the ID.
If you export to a different event, each image is added there as a new photo.
Troubleshooting
Turn on logging under Plug-in Manager → PicPeak → Logging, repeat the action that failed, and click Show log file. If an import fails, check the filename matching, the selected RAW folder, the server endpoint and your conflict policy.
For more detail, see the round-trip guide or open an issue.
For a self-hosted personal photo library next to your client galleries, see the Lightroom Immich Plugin.
