Direct-to-S3 / Azure tus 1.0 resume IndexedDB Golden Retriever 30 locales Webcam & screen capture

Multi-Rendition Upload

Drop an image and the browser generates scaled renditions alongside the original — here a 200px thumbnail and a 1024px WebP — and uploads all of them in one pass. Renditions are resized off the main thread (Web Worker), named photo.thumb.jpg-style, and linked to the parent via renditionOf so your server can associate the stored files. A failed rendition never blocks the original.

What you should see: drop one image and three uploads complete: the original, a 200px .thumb.jpg, and a 1024px .medium.webp, each logged as it is generated.
<!-- Tag Helper -->
<core-upload asp-upload-url="/api/upload/upload"
    asp-renditions='[{"name":"thumb","maxSize":200},
                     {"name":"medium","maxWidth":1024,"format":"image/webp","quality":0.8}]'
    asp-on-rendition-created="onRendition" />

// JavaScript API
CoreUpload.create('#uploader', {
    uploadUrl: '/api/upload/upload',
    renditions: [
        { name: 'thumb',  maxSize: 200 },
        { name: 'medium', maxWidth: 1024, maxHeight: 1024,
          format: 'image/webp', quality: 0.8 }
    ],
    onRenditionCreated: (rend, original) =>
        console.log(rend.fileName, 'generated for', original.fileName)
});