|
1 |
| -# Cloudinary Vue SDK |
| 1 | +Cloudinary Vue SDK |
| 2 | +========================= |
| 3 | +[](https://app.travis-ci.com/github/cloudinary/cloudinary-vue) |
| 4 | +## About |
| 5 | +The Cloudinary Vue SDK allows you to quickly and easily integrate your application with Cloudinary. |
| 6 | +Effortlessly optimize and transform your cloud's assets. |
2 | 7 |
|
3 |
| -[](https://travis-ci.org/cloudinary/cloudinary-vue) |
4 | 8 |
|
5 |
| -Cloudinary is a [cloud-based service](https://cloudinary.com/solutions) that provides an end-to-end image and video management solution |
6 |
| -including uploads,storage, manipulations, optimizations and delivery. |
7 |
| -All your media resources are optimized and delivered through a fast CDN using industry best practices. |
| 9 | +### Additional documentation |
| 10 | +This Readme provides basic installation and usage information. |
| 11 | +For the complete documentation, see the [Vue SDK Guide](https://cloudinary.com/documentation/vue_integration). |
8 | 12 |
|
9 |
| -Using Cloudinary's Vue.js SDK, you can easily perform smart image and video manipulations |
10 |
| -using code that integrates seamlessly with your existing Vue.js application, and deliver optimized and responsive media to your users. |
11 | 13 |
|
12 |
| -This Readme provides basic installation and usage information. For the complete documentation, see the [Vue.js SDK guide](https://cloudinary.com/documentation/vue_integration)_ |
| 14 | +## Table of Contents |
| 15 | +- [Key Features](#key-features) |
| 16 | +- [Version Support](#Version-Support) |
| 17 | +- [Installation](#installation) |
| 18 | +- [Usage](#usage) |
| 19 | + - [Setup](#Setup) |
| 20 | + - [Transform and Optimize Assets](#Transform-and-Optimize-Assets) |
| 21 | + - [Generate Image and HTML Tags](#Generate-Image-and-Video-HTML-Tags) |
13 | 22 |
|
14 |
| -# 🛠️ Installation |
15 |
| -## Vue 2.x |
16 |
| -1. Install using Vue-CLI |
17 |
| - - After you create your application with Vue-CLI, navigate to the created app folder, and install Cloudinary SDK by: |
18 |
| - ```bash |
19 |
| - vue add cloudinary |
20 |
| - ``` |
21 |
| - - Set up your cloudName and pick the components to use (or use all 😃) |
22 |
| -  |
23 |
| - - A `cloudinary.js` file will be added to your src directory, same level with your `main.js` file. Feel free to customize it if you like. And have fun with Cloudinary! 🤟 |
24 |
| - - More information on the plugin, check out [our Vue-CLI plugin for Cloudinary Repo](https://github.com/cloudinary/vue-cli-plugin-cloudinary) |
| 23 | +## Key Features |
| 24 | +- [Transform](https://cloudinary.com/documentation/vue_video_manipulation#video_transformation_examples) and [optimize](https://cloudinary.com/documentation/vue_image_manipulation#image_optimizations) assets (links to docs). |
| 25 | +- Generate [image](https://cloudinary.com/documentation/vue_image_manipulation#deliver_and_transform_images) and [video](https://cloudinary.com/documentation/vue_video_manipulation#cldvideo_component) tags (links to docs). |
25 | 26 |
|
26 |
| -2. install using your favorite package manager (yarn, npm) |
27 |
| - ```bash |
28 |
| - npm install cloudinary-vue |
29 |
| - yarn add cloudinary-vue |
30 |
| - ``` |
31 | 27 |
|
32 |
| -### Nuxt.js |
| 28 | +## Version Support |
| 29 | +| SDK Version | Vue 2 | Vue 3 | |
| 30 | +|---------------|----------|--------| |
| 31 | +| 1.0.0 - 1.2.3 | V | X | |
33 | 32 |
|
34 |
| -Please use [Cloudinary module](https://cloudinary.nuxtjs.org/) for [Nuxt.js](https://nuxtjs.org) projects. You can set it up by using the following: |
35 | 33 |
|
| 34 | + |
| 35 | +## Installation |
| 36 | +### Install using Vue-CLI |
| 37 | +- After you create your application with Vue-CLI, navigate to the created app folder, and install Cloudinary SDK by: |
| 38 | + ```bash |
| 39 | + vue add cloudinary |
| 40 | + ``` |
| 41 | +- Set up your cloud name and pick the components to use (or use all 😃) |
| 42 | +  |
| 43 | +- A `cloudinary.js` file will be added to your src directory, at the same level as your `main.js` file. Feel free to customize it if you like. And have fun with Cloudinary! 🤟 |
| 44 | +- For more information on the plugin, check out our [Vue-CLI plugin for Cloudinary Repo](https://github.com/cloudinary/vue-cli-plugin-cloudinary). |
| 45 | + |
| 46 | +### Install using your favorite package manager (yarn, npm) |
| 47 | +```bash |
| 48 | +npm install cloudinary-vue |
| 49 | +yarn add cloudinary-vue |
| 50 | +``` |
| 51 | +### Nuxt.js |
| 52 | +For [Nuxt.js](https://nuxtjs.org) projects, use [Cloudinary module](https://cloudinary.nuxtjs.org/). You can set it up by using the following: |
36 | 53 | ```
|
37 | 54 | yarn add @nuxtjs/cloudinary
|
38 |
| -#OR |
| 55 | +# Or |
39 | 56 | npm i @nuxtjs/cloudinary
|
40 | 57 | ```
|
41 | 58 |
|
42 |
| -## Setup and configuration |
| 59 | +## Usage |
| 60 | +### Setup |
| 61 | +```javascript |
| 62 | +import Vue from 'vue'; |
| 63 | +import Cloudinary, { CldImage, CldVideo, CldTransformation, CldContext } from "cloudinary-vue"; |
| 64 | +
|
| 65 | +Vue.use(Cloudinary, { |
| 66 | + configuration: { cloudName: "demo" }, |
| 67 | + components: { |
| 68 | + CldContext, |
| 69 | + CldImage, |
| 70 | + CldVideo, |
| 71 | + CldTransformation, |
| 72 | + } |
| 73 | +}); |
| 74 | +``` |
| 75 | +You can also import the Cloudinary components manually in each of your components. |
43 | 76 |
|
44 |
| -### Vue 2.x - Setup and configuration |
45 |
| -1. **A Global setup** - Include CloudinaryVue globally |
46 |
| - ```javascript |
47 |
| - import Vue from 'vue'; |
48 |
| - import Cloudinary, { CldImage, CldTransformation } from "cloudinary-vue"; |
| 77 | +### Transform and Optimize Assets |
| 78 | +- [See full documentation](https://cloudinary.com/documentation/vue_image_manipulation) |
49 | 79 |
|
50 |
| - Vue.use(Cloudinary, { |
51 |
| - configuration: { cloudName: "demo" }, |
52 |
| - components: { |
53 |
| - CldImage, |
54 |
| - CldTransformation |
55 |
| - } |
56 |
| - }); |
| 80 | + ```jsx |
| 81 | + // Apply a single transformation |
| 82 | + <cld-context cloudName="demo"> |
| 83 | + <cld-image publicId="sample"> |
| 84 | + <cld-transformation crop="scale" width="200" angle="10" /> |
| 85 | + </cld-image> |
| 86 | + </cld-context> |
57 | 87 | ```
|
58 |
| - |
59 |
| -2. **A Local setup** - You can also import the cloudinary components manually in each of your components. |
60 |
| -
|
61 |
| -# Plugin Configuration |
62 |
| -The CloudinaryVue Plugin accepts a `components` object with the Cloudinary components to install |
63 |
| -
|
64 |
| - - `components` can also be passed as an array: |
65 |
| - ```javascript |
66 |
| - components:[CldImage. CldTransformation] |
67 |
| - ``` |
68 |
| - |
69 |
| - - `components` can also be used to rename the cloudinary components: |
70 |
| - ```javascript |
71 |
| - components: { |
72 |
| - myImage: CldImage, |
73 |
| - myTransformation : CldTransformation |
74 |
| - } |
75 |
| - ``` |
76 |
| -
|
77 |
| -# General usage |
78 |
| -
|
79 |
| -In order to properly use this library you have to provide it with a few configuration parameters. All configuration parameters can be applied directly to the element, using a `CldContext` component or while installing a plugin (second argument of `Vue.use`). |
80 |
| -
|
81 |
| -```html |
82 |
| -<template> |
83 |
| - <div> |
84 |
| - <h1>Hello, world!</h1> |
85 |
| -
|
86 |
| - <cld-image cloudName="demo" publicId="sample" crop="scale" width="300" /> |
87 | 88 |
|
| 89 | + ```jsx |
| 90 | + // Chain (compose) multiple transformations |
88 | 91 | <cld-context cloudName="demo">
|
89 |
| - <cld-image publicId="sample"> |
90 |
| - <cld-transformation crop="scale" width="200" angle="10" /> |
91 |
| - </cld-image> |
92 |
| - </cld-context> |
93 |
| - </div> |
94 |
| -</template> |
95 |
| -``` |
96 |
| -
|
97 |
| -Required: |
98 |
| -
|
99 |
| -- `cloudName` - The cloudinary cloud name associated with your Cloudinary account. |
100 |
| -
|
101 |
| -Optional: |
102 |
| -
|
103 |
| -- `privateCdn`, `secureDistribution`, `cname`, `cdnSubdomain` - Please refer to [Cloudinary Documentation](https://cloudinary.com/documentation/react_integration#3_set_cloudinary_configuration_parameters) for information on these parameters. |
104 |
| -
|
105 |
| -### Specific usage |
106 |
| -
|
107 |
| -The library includes 5 components: |
108 |
| -
|
109 |
| -- `CldContext` |
110 |
| -- `CldTransformation` |
111 |
| -- `CldImage` |
112 |
| -- `CldVideo` |
113 |
| -- `CldPoster` (only used together with `CldVideo`) |
114 |
| -
|
115 |
| -#### CldContext |
116 |
| -
|
117 |
| -`CldContext` allows you to define shared configuration and resource transformation parameters that are applied to all children elements. |
118 |
| -
|
119 |
| -#### CldImage |
120 |
| -
|
121 |
| -outputs HTML `img` tag with a correct `src` attribute for provided Cloudinary resource, based on configuration and transformation parameters provided as attributes of this component instance, parent `CldContext` and children `CldTransformation` instances. |
122 |
| -
|
123 |
| -#### CldVideo |
124 |
| -
|
125 |
| -outputs HTML `video` tag with a correct `sources` for provided Cloudinary resource, based on configuration and transformation parameters provided as attributes of this component instance, parent `CldContext` and children `CldTransformation` instances. |
126 |
| -
|
127 |
| -#### CldPoster (optional) |
128 |
| -specify image resource to be provided to `poster` attribute of the `video` element |
129 |
| -
|
130 |
| -#### CldTransformation |
131 |
| -
|
132 |
| -The Transformation element allows you to defined additional transformations on the parent element. You can also use built-in `transformation` attribute available in `CldImage` and `CldVideo` for the same effect. |
133 |
| -
|
134 |
| -For example: |
135 |
| -
|
136 |
| -```jsx |
137 |
| -<cld-image cloudName="demo" publicId="sample"> |
138 |
| - <cld-transformation angle="-45" /> |
139 |
| - <cld-transformation effect="trim" angle="45" crop="scale" width="600" /> |
140 |
| - <cld-transformation overlay="text:Arial_100:Hello" /> |
141 |
| -</cld-image> |
142 |
| -``` |
143 |
| -
|
144 |
| -## How to contribute? |
145 |
| -
|
146 |
| -See [contributing guidelines](/CONTRIBUTING.md) in a separate file. |
| 92 | + <cld-image cloudName="demo" publicId="sample"> |
| 93 | + <cld-transformation angle="-45" /> |
| 94 | + <cld-transformation effect="trim" angle="45" crop="scale" width="600" /> |
| 95 | + <cld-transformation overlay="text:Arial_100:Hello" /> |
| 96 | + </cld-image> |
| 97 | + </cld-context> |
| 98 | + ``` |
| 99 | +### Generate Image and Video HTML Tags |
| 100 | + - Use <cld-image> to generate image tags |
| 101 | + - Use <cld-video> to generate video Tags |
147 | 102 |
|
148 |
| -## Additional resources |
| 103 | +### File upload |
| 104 | + This SDK does not provide file upload functionality, however there are [several methods of uploading from the client side](https://cloudinary.com/documentation/vue_image_and_video_upload). |
149 | 105 |
|
150 |
| -Additional resources are available at: |
151 | 106 |
|
152 |
| -- [Website](http://cloudinary.com) |
153 |
| -- [Documentation](https://cloudinary.com/documentation/vue_integration) |
154 |
| -- [Knowledge Base](http://support.cloudinary.com/forums) |
155 |
| -- [Image transformations documentation](http://cloudinary.com/documentation/image_transformations) |
156 |
| -- [Video transformations documentation](https://cloudinary.com/documentation/video_manipulation_and_delivery#video_transformations_reference) |
157 |
| -- [Cli plugin for Cloudinary Vue](https://github.com/cloudinary/vue-cli-plugin-cloudinary) |
| 107 | +## Contributions |
| 108 | +See [contributing guidelines](/CONTRIBUTING.md). |
158 | 109 |
|
159 |
| -## Support |
160 | 110 |
|
161 |
| -You can [open an issue through GitHub](https://github.com/CloudinaryLtd/cloudinary_vue/issues). |
| 111 | +## Get Help |
| 112 | +If you run into an issue or have a question, you can either: |
| 113 | +- [Open a Github issue](https://github.com/CloudinaryLtd/cloudinary_vue/issues) (for issues related to the SDK) |
| 114 | +- [Open a support ticket](https://cloudinary.com/contact) (for issues related to your account) |
162 | 115 |
|
163 |
| -Contact us at [http://cloudinary.com/contact](http://cloudinary.com/contact). |
164 | 116 |
|
165 |
| -Stay tuned for updates, tips and tutorials: [Blog](http://cloudinary.com/blog), [Twitter](https://twitter.com/cloudinary), [Facebook](http://www.facebook.com/Cloudinary). |
| 117 | +## About Cloudinary |
| 118 | +Cloudinary is a powerful media API for websites and mobile apps alike, Cloudinary enables developers to efficiently manage, transform, optimize, and deliver images and videos through multiple CDNs. Ultimately, viewers enjoy responsive and personalized visual-media experiences—irrespective of the viewing device. |
166 | 119 |
|
167 |
| -## Join the Community |
168 | 120 |
|
169 |
| -Impact the product, hear updates, test drive new features and more! Join [here](https://www.facebook.com/groups/CloudinaryCommunity). |
| 121 | +## Additional Resources |
| 122 | +- [Cloudinary Transformation and REST API References](https://cloudinary.com/documentation/cloudinary_references): Comprehensive references, including syntax and examples for all SDKs. |
| 123 | +- [MediaJams.dev](https://mediajams.dev/): Bite-size use-case tutorials written by and for Cloudinary Developers |
| 124 | +- [DevJams](https://www.youtube.com/playlist?list=PL8dVGjLA2oMr09amgERARsZyrOz_sPvqw): Cloudinary developer podcasts on YouTube. |
| 125 | +- [Cloudinary Academy](https://training.cloudinary.com/): Free self-paced courses, instructor-led virtual courses, and on-site courses. |
| 126 | +- [Code Explorers and Feature Demos](https://cloudinary.com/documentation/code_explorers_demos_index): A one-stop shop for all code explorers, Postman collections, and feature demos found in the docs. |
| 127 | +- [Cloudinary Roadmap](https://cloudinary.com/roadmap): Your chance to follow, vote, or suggest what Cloudinary should develop next. |
| 128 | +- [Cloudinary Facebook Community](https://www.facebook.com/groups/CloudinaryCommunity): Learn from and offer help to other Cloudinary developers. |
| 129 | +- [Cloudinary Account Registration](https://cloudinary.com/users/register/free): Free Cloudinary account registration. |
| 130 | +- [Cloudinary Website](https://cloudinary.com) |
170 | 131 |
|
171 |
| -## License |
172 | 132 |
|
| 133 | +## Licence |
173 | 134 | Released under the MIT license.
|
0 commit comments