` tag to showcase what's possible.
+:::
+
+
+
+
+
+
+```svelte {9-58}
+
+
+
+```
+
+
+
+
+
+```ts {6-55}
+import { getCldOgImageUrl } from 'svelte-cloudinary';
+
+// You're responsible for adding the correct meta tags
+const url = getCldOgImageUrl({
+ src: 'images/white',
+ overlays: [
+ {
+ publicId: `images/mountain`,
+ position: {
+ x: 0,
+ y: 0,
+ gravity: 'north_east',
+ },
+ effects: [
+ {
+ crop: 'fill',
+ gravity: 'auto',
+ width: '0.33',
+ height: '1.0',
+ },
+ ],
+ flags: ['relative'],
+ },
+ {
+ width: 700,
+ crop: 'fit',
+ text: {
+ color: 'black',
+ fontFamily: 'Source Sans Pro',
+ fontSize: 80,
+ fontWeight: 'bold',
+ text: 'Next Cloudinary',
+ },
+ position: {
+ x: 80,
+ y: -50,
+ gravity: 'west',
+ },
+ },
+ {
+ width: 700,
+ crop: 'fit',
+ text: {
+ color: 'black',
+ fontFamily: 'Source Sans Pro',
+ fontSize: 40,
+ text: 'Get the power of Cloudinary in a Next.js project with Next Cloudinary!',
+ },
+ position: {
+ x: 80,
+ y: 50,
+ gravity: 'west',
+ },
+ },
+ ],
+});
+```
+
+
+
diff --git a/packages/docs/src/content/docs/guides/uploading-images-and-videos.mdx b/packages/docs/src/content/docs/guides/uploading-images-and-videos.mdx
new file mode 100644
index 00000000..39ee3178
--- /dev/null
+++ b/packages/docs/src/content/docs/guides/uploading-images-and-videos.mdx
@@ -0,0 +1,18 @@
+---
+title: Uploading Images and Videos
+description: Learn how to use Cloudinary to enable users to upload images and/or videos.
+---
+
+import uploadCode from '$lib/examples/Upload.svelte?raw';
+import { Code } from '@astrojs/starlight/components';
+import Upload from '$lib/examples/Upload.svelte';
+
+You can use the upload widget, or as a shortcut the upload button, to enable the users to upload images and/or videos.
+
+:::caution
+Starlight (the documentation framework we use) messes with the upload widget, we're working on a fix but it'll work fine with your Svelte/SvelteKit websites!
+:::
+
+
+
+
diff --git a/packages/docs/src/lib/examples/Upload.svelte b/packages/docs/src/lib/examples/Upload.svelte
new file mode 100644
index 00000000..cb4555b3
--- /dev/null
+++ b/packages/docs/src/lib/examples/Upload.svelte
@@ -0,0 +1,33 @@
+
+
+{#if info?.resource_type === 'video'}
+
+{:else if info}
+
+{:else}
+ Click the button below to try uploading something:
+{/if}
+
+ {
+ if (typeof result.info === 'object') {
+ info = result.info;
+ widget.close();
+ }
+ }} />
diff --git a/vercel.json b/vercel.json
index 7172e2cc..de6f5734 100644
--- a/vercel.json
+++ b/vercel.json
@@ -74,47 +74,15 @@
"destination": "/helpers/getcldogimageurl/configuration"
},
{
- "source": "/getcldogimageurl/examples",
- "destination": "/missing"
- },
- {
- "source": "/guides",
- "destination": "/missing"
- },
- {
- "source": "/guides/background-removal",
- "destination": "/missing"
- },
- {
- "source": "/guides/image-optimization",
- "destination": "/missing"
- },
- {
- "source": "/guides/image-overlays",
- "destination": "/missing"
- },
- {
- "source": "/guides/image-underlays",
- "destination": "/missing"
- },
- {
- "source": "/guides/placeholders",
- "destination": "/missing"
- },
- {
- "source": "/guides/responsive-images",
- "destination": "/missing"
- },
- {
- "source": "/guides/social-media-cards",
- "destination": "/missing"
+ "source": "/guides/images-overlays",
+ "destination": "/guides/overlays"
},
{
"source": "/guides/text-overlays",
- "destination": "/missing"
+ "destination": "/guides/overlays"
},
{
- "source": "/guides/uploading-images-and-videos",
+ "source": "/getcldogimageurl/examples",
"destination": "/missing"
},
{