Skip to content

Implement PicPeak plugin with export, publish, and event features#1

Open
bmachek wants to merge 4 commits into
PicPeak:mainfrom
bmachek:main
Open

Implement PicPeak plugin with export, publish, and event features#1
bmachek wants to merge 4 commits into
PicPeak:mainfrom
bmachek:main

Conversation

@bmachek

@bmachek bmachek commented Jul 3, 2026

Copy link
Copy Markdown

Initial code transfer for the Lightroom plugin from separate repository.

bmachek and others added 4 commits July 3, 2026 13:15
Export and Publish workflows for uploading photos to a self-hosted
PicPeak gallery server via its v1 API (Bearer token auth, events +
photo upload endpoints). Adapted from lrc-immich-plugin architecture.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
LR SDK rejects browsable=true with searchable=false. Set picpeakEventId
to browsable=false since it's an internal tracking field, not something
users need to browse in the Library filter bar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…back

Export and Publish dialogs now expose all fields supported by the
PicPeak v1 POST /events endpoint:
- Customer name, email, phone and admin notification email
- Password protection with password field
- Expiration date (ISO 8601)
- Guest feedback toggle (ratings, likes, comments, favorites)
- Color theme preset name

Publish collection settings persist all creation params so events are
auto-created with the right metadata on first publish. createEvent() in
PicPeakAPI now accepts and forwards all optional fields cleanly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
When Lightroom marks a photo as "modified / to re-publish", the rendition
carries the previously recorded remote ID via publishedPhoto:getRemoteId().
We now detect this case and skip the upload, re-recording the existing
PicPeak photo ID so Lightroom marks the photo as up-to-date.

PicPeak v1 API has no replace/delete photo endpoint (admin-only, session
auth only), so uploading again would always create a duplicate. A one-time
info dialog after the run tells the user how many photos were skipped and
how to force a replacement (remove → delete in PicPeak → re-add).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@gitguardian

gitguardian Bot commented Jul 3, 2026

Copy link
Copy Markdown

⚠️ GitGuardian has uncovered 1 secret following the scan of your pull request.

Please consider investigating the findings and remediating the incidents. Failure to do so may lead to compromising the associated services or software components.

Since your pull request originates from a forked repository, GitGuardian is not able to associate the secrets uncovered with secret incidents on your GitGuardian dashboard.
Skipping this check run and merging your pull request will create secret incidents on your GitGuardian dashboard.

🔎 Detected hardcoded secret in your pull request
GitGuardian id GitGuardian status Secret Commit Filename
- - Username Password 371b95b picpeak-plugin.lrplugin/JSON.lua View secret
🛠 Guidelines to remediate hardcoded secrets
  1. Understand the implications of revoking this secret by investigating where it is used in your code.
  2. Replace and store your secret safely. Learn here the best practices.
  3. Revoke and rotate this secret.
  4. If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.

To avoid such incidents in the future consider


🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.

@bmachek

bmachek commented Jul 4, 2026

Copy link
Copy Markdown
Author

No secret in JSON.lua if you ask me 😊

@bmachek

bmachek commented Jul 5, 2026

Copy link
Copy Markdown
Author

@the-luap You can merge it, if you want to. I don't think there is really a secret inside JSON.lua

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant