is it a simple integration, or did you have to hard code it in? does it create a little edit button on existing images like the pintura integration does?
… if it’s that easy to make integrations work in ghost, why aren’t there more of them doing stuff like this?
Mostly, its build on top of Ghost, overwriting, some classes/functions to function fully, but it does so in the build process, so the core stays intact, for easier updates.
It is not a simple integration. Most integrations are largely or completely external, using a service like Zapier. If you search for pintura in the codebase, there are many files that match, signalling a deep integration. Here are files that contain pintura.
From the locations I looked it, there does appear configuration options to disable it, and possibly some intent to allow overriding it.
There are some other non-open source components to Ghost as well. In the themes you’ll find (free) commercial CDNs being used the Unsplash integration is turned on by default. While the Unsplash photos themselves are licensed for liberal use, the terms of the Unsplash API, owned by Getty, require that the photos be served from the Unsplash domain so that views can be tracked. Since the photographers who upload to Unsplash don’t get any money from the photos, this arrangement allows the photographers to get some benefit-- to understand where and how often their photos are viewed.
If you want to use Unsplash photos but don’t want the tracking, it’s necessary to download them to your computer and then re-upload them to your blog so that you are hosting themselves.
But both the CDN and Unsplash integrations are free-as-in-beer for users have the effect of improving performance and shifting some of the hosting burden to third-party CDNs.
Just like some Linux distributions have been forked so all the commercial bits have removed to have a fully open distribution, the Ghost license allows anyone to fork the project and remix a version without any of the bits they don’t want.
my point is more that Ghost’s integration system should be designed to give developers the power to extend it in these types of ways, or, if it can’t be, they shouldn’t be giving proprietary software services special privileges in the system at all. The fact that it’s technically possible to fork and remove the proprietary bits doesn’t resolve my concerns.
WordPress gave plugin authors the power of deep integration, and that resulted in the hot mess of security problems that still plague the WordPress plugin ecosystem today.
Ghost chose a far more secure design-- to require extensions to be made using their API instead. There are also a few places on the backend that use an “adapter” pattern to swap in different components like an alternate fire storage system or an SSO login system.
That’s a refreshingly different alternative, but it also made certain kinds of integrations more difficult because they don’t work well either of Ghost’s extensions options, and the Pintura integration fits into that. I’d rather have this situation than a compromised security model.
I think integrating proprietary software directly into Ghost is as big a security risk as offering users the option to implement deep integrations.
But I wasn’t saying “deeper than the API goes,” I was saying “create API rails that allow for something at the level of the Pintura integration, so you don’t have to bake it into Ghost.” This makes it easier to not only turn it off, but not have it in or near my blog client in the first place.
And, again, I’m on Ghost Pro. I don’t have the option to remove it from my experience, do I? Edit: well, I found the option to disable the integration. I guess that’s all I can hope for with managed hosting…
I mean, Preview on Mac does all of this. Windows sucks a little bit, but at least there is still the good old Paint. It’s impossible that nowadays a modern computer doesn’t come with preinstalled photo editing.
Bruh… Time to self host… Or even make a fork of this. This and the post history enabled by default (and no way to turn it off for now) doesn’t make any sense. We don’t even have a media library yet!
This update highlights the Ghost developers’ decision to prioritize a closed-source image editor (Pintura) over a much-needed Media Library. Despite claiming the necessity to focus on a few things due to limited resources, Ghost’s responses appear to be mere empty PR rhetoric. It’s truly disappointing that the developers seem to be losing sight of their priorities.