sanity-io / sanity-plugin-asset-source-cloudinary

Access and select photos from your Cloudinary account within the Sanity Studio.
MIT License
10 stars 4 forks source link
team-ecosystem

Sanity Asset Source Plugin: Cloudinary

This is a Sanity Studio v2 plugin.

For the Sanity Studio v3 equivalent, please refer to the v3 version of sanity-plugin-cloudinary.

Cloudinary asset source is available there.

Access and select photos from your Cloudinary account within the Sanity Studio.

Build Status

Installation

sanity install asset-source-cloudinary

Edit the config file found in ./config/asset-source-cloudinary.json with your Cloudinary Cloud name and API key.

You can find these in the Cloudinary Console: https://cloudinary.com/console

Part name

If you need to customize available asset sources, the plugin part name for this asset source is:

part:asset-source-cloudinary/image-asset-source

Finding back to the original asset in Cloudinary (public_id, resource_type, type)

This info exists on the asset document, however it's base64-encoded in the source.id field. It's base64 encoded because Sanity asset-source plugins have a generic way of identifying assets (provider name and id), and Cloudinary is a bit special needing to have three items to programatically find back to the original image, as opposed to just an id as most other sources do.

JSON.parse(atob(source.id))

> {"public_id":"samples/cloudinary-group","resource_type":"image","type":"upload"}

Developing on this module

To simulate using your development version as a real module inside a studio, you can do the following:

Displaying your development version inside a studio

With the mono-repo's test-studio:

With a regular Sanity Studio:

When you are done and have published your new version, you can run npm unlink inside this repo, and npm unlink sanity-plugin-asset-source-cloudinary inside the mono-repo or studio to get back to the normal state. Then run npm run bootstrap for the mono-repo or npm install inside the regular studio to use the published version.

Futher reading