Submission: immich plugin
Gilles Caulier
caulier.gilles at gmail.com
Mon Oct 19 21:27:56 BST 2026
Hi Christian,
There is no problem to compile this code under Linux (here arm64):
https://www.flickr.com/photos/185465119@N02/55600062161/in/dateposted-public/
A first look to the GUI revelate some improvements to do :
- the layout is broken on the top/left.
- I don't understand the interface, how to start, and how to do it. A
better mapping of the widget can help the users to quickly drive the tool.
- The thumbnails : you don't use the cache mechanism from digiKam. Looks
like HEIF is not rendered, where digiKam supports it very well.
- No action button, Hel, close, upload, etc, typically on the bottom of the
dialog.
I look quickly at the code improvements that can be done a lot, as private
classes C++ objects can be hidden. There is a cpp file more than 100Kb. The
cpp must be separated by feature to help in the code maintenance. Look how
i do with the 3rd party Gmicqt plugin that i wrap in this repository:
https://github.com/cgilles/digikam-gmic-qt/tree/master/src/bqm
It's usual to limit the cpp file size to 10-20 Kb when it's possible. .h
cannot be cut in small parts.
I recommend also to pass the open source static analyzers, as cppcheck or
clazy. Look at the scripts here :
https://github.com/cgilles/digikam-gmic-qt/tree/master/src/reports
My best regards
Gilles Caulier
Le lun. 19 oct. 2026 à 21:57, Gilles Caulier <caulier.gilles at gmail.com> a
écrit :
> Hi Christian,
>
> Thanks for your work. Please add me in your project in the github
> repository, i will review the code and give you some guidance
>
> My account : https://github.com/cgilles
>
> I will check out the code and look to compile. When all will be fine, We
> can plan to include it in the digiKam bundles as the G'MIC-qt plugin for ex.
>
> Best regards
>
> Gilles Caulier
>
> Le lun. 19 oct. 2026 à 19:42, Christian McHugh <mmchugh at silverapple.eu> a
> écrit :
>
>> Hello everyone,
>>
>> I have been writing a generic plugin that connects digiKam to a
>> self-hosted Immich server, and before taking it further I wanted to ask
>> whether the project would be interested in it as an in-tree web-service
>> plugin, alongside Piwigo and the others.
>>
>> While vibe coded, it is working software and was made to allow my family
>> to more easily access and edit their photos through Immich. The
>> repository is at https://github.com/mchugh19/immich-digikam/tree/main
>> and it currently provides:
>>
>> - Import of an album or a tag's contents into a local folder.
>> - Export of the digiKam selection to the Immich library or album.
>> - Metadata round-tripping through XMP sidecars (tags, rating, caption,
>> GPS), which one mechanism both applications read and write. Metadata
>> edited on either side is synced onto the existing Immich asset rather
>> than re-uploaded.
>> - Edited files are recognized as new versions of photos already in
>> Immich (by name, capture time, dimensions and a pixel comparison) and
>> can replace the old copy as the primary of a stack, or overwrite it,
>> instead of accumulating duplicates.
>> - It is developed and tested against Immich 3.3.3 and digiKam 9.1, and
>> it has unit tests for its pure logic plus contract tests against a stub
>> server.
>>
>> I use it against my own server, and I am prepared to help maintain it,
>> including following Immich API changes.
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20261019/b6d53d52/attachment.htm>
More information about the Digikam-devel
mailing list