API/Integration into CMS? #112
Replies: 7 comments 16 replies
-
|
This would be a very interesting collaboration! The image gallery/file browser/admin is closely tied to a graphql backend for all the CRUD it takes. Image editor, however, the only dependencies tied to the backend API is signed URL generation (for security), then the rest is offloaded to imagor itself. There are multiple phases/approaches we may facilitate the integration. It sounds like the first step can be decoupling image editor (React + tailwind + shadcn UI) with URL generation API + imagor itself. What do you think? |
Beta Was this translation helpful? Give feedback.
-
|
Hey @cshum , also thought about this a bit... My 2 cents:
My current favourite would be, if you want to integrate with Imagor Studio Editor: The Editor will call you (i.e. the CMS) via postMessage, and send an imagor string without HASH. The CMS integration would the need to sign the string server-side (after checking user authentication etc), and return the Image URL with hash, which can then be displayed by the Imagor Studio UI. If being in a completely trusted environment, one could simply prepend "UNSAFE" as usual. Drawback of this solution would be that there is a "middle-man" between the Imagor Studio UI and Imagor, which needs to take care of signing. Curious about your further thoughts :) |
Beta Was this translation helpful? Give feedback.
-
|
Hi @skurfuerst ,
Phase 1 is now available! The initial embedded build is available at Documentation: https://docs.studio.imagor.net/deployment/embedded-mode/ The implementation includes:
I'd love to have you try integrating the If you encounter any bugs or feedback during integration testing please let me know. Looking forward to hearing about your experience with CMS integration! Best, |
Beta Was this translation helpful? Give feedback.
-
|
Hey @cshum , I finally got around to build a minimal integration from the Neos side of things, and things are working nicely so far. Imagor Studio is triggered via the Inspector on the right, when clicking the "crop" icon of the image: When I click this, Imagor Studio shows nicely in the middle, with the image selected being active: Great work so far ❤️ ❤️ By playing around with the editor within Neos, I got the following ideas for improvement: Base URL Base URL of the editor should be configurable; so that it does not live on / but on a sub-path. This is useful to be able to host Neos (or any other system) + imagor studio / imagor under a single domain. visual cropping It would be great to display + adjust the crop area visually, f.e. by using https://www.npmjs.com/package/react-image-crop or sth. like it - as cropping is certainly (for us) the most important operation to be done. Thumbnail support This is kind of a hard one: In Neos, people do NOT choose an image size in the image editor, but the image size + output format is chosen at rendering time. So that means:
Configurable Editor Ordering + Hiding It would be great if the editors from Imagor Studio could be re-ordered on call and partially hidden. In my example, I'd put "crop" at the top, and hide Dimensions/Resize + Output/Compression. Feedback via postMessage when parameters are changed This is for "Phase 2". In Neos, we would like to reflect every image configuration change directly in the inspector on the right. If we get informed (and get the Image Parameters back) via PostMessage, we could directly refresh the small thumbnail on the right, in the inspector - which is the UX we are aiming for. Configurable default theme As Neos is dark-themed, I'd love to switch to dark theme by default (maybe via URL parameter?). It would be perfect if we could also specify a background color or a style.css override -> this way we could make the UI blend visually into Neos perfectly. Again, THANKS SO MUCH for your continued support and your great work. I'm really curious on your ideas on the topics above; please take them all as positive suggestions :-) Thanks again and all the best, |
Beta Was this translation helpful? Give feedback.
-
|
Hi @skurfuerst, thank you so much for the detailed feedback and for taking the time to build the integration! I want to take a bit of time to digest all these points properly and come back with thoughts on implementation. All of them make a lot of sense. I had wanted visual cropping from the start but the implementation is harder than I initially thought - but I totally agree this has to be done if we want to push it for use cases like this. Quick one - dark theme config should be supported via Will get back to you on the rest soon! Best, |
Beta Was this translation helpful? Give feedback.
-
|
Hi @skurfuerst PR would be very welcome too! To kick start with local development setup, you may try to get server and web up and running with the following config: Server config Server requires libvips and ffmpeg install, same as imagorvideo. Start server Web config Start web If you're interested in working on the postMessage API part (Phase 2), that would be amazing! Let me know once you have the dev environment running. |
Beta Was this translation helpful? Give feedback.
-
|
@skurfuerst the latest version of Imagor Studio introduces visual cropping with aspect ratio control and unified crop/resize workflow! The visual cropping allows drag-and-drop resize handles with visual overlay showing the crop area. It is also equipped with locked aspect ratio control while cropping. |
Beta Was this translation helpful? Give feedback.



Uh oh!
There was an error while loading. Please reload this page.
-
Hey,
I am one of the core developers of the neos.io open source CMS. Right now we have a rudimentary image editing component in the system, which can only zoom and crop images.
I'd like to provide imagorstudio as an option for more powerful image editing - and this would also offload us from handling imagemagick/vips ourselves.
Our base application is a React application, so the basics would fit - but I'd like to completely use Neos as imagorstudio storage backend, authentication layer etc; so that the image listing etc would be provided from Neos api wise.
Curious about your thoughts here. Would this be something of interest to you, or would you rather say this is out of scope for imagorstudio (which of course is also totally fine :))
Thanks for your feedback,
Sebastian
Beta Was this translation helpful? Give feedback.
All reactions