DotSee.ResponsiveImages
17.0.23
dotnet add package DotSee.ResponsiveImages --version 17.0.23
NuGet\Install-Package DotSee.ResponsiveImages -Version 17.0.23
<PackageReference Include="DotSee.ResponsiveImages" Version="17.0.23" />
<PackageVersion Include="DotSee.ResponsiveImages" Version="17.0.23" />
<PackageReference Include="DotSee.ResponsiveImages" />
paket add DotSee.ResponsiveImages --version 17.0.23
#r "nuget: DotSee.ResponsiveImages, 17.0.23"
#:package DotSee.ResponsiveImages@17.0.23
#addin nuget:?package=DotSee.ResponsiveImages&version=17.0.23
#tool nuget:?package=DotSee.ResponsiveImages&version=17.0.23
DotSee.ResponsiveImages
Responsive images for Umbraco CMS 17, driven entirely by configuration:
<picture>elements with per-breakpoint art direction (<ds:picture>)<img>withsrcset/sizes(<ds:img>)- Responsive CSS background images with focal-point-aware
background-position(<ds:background>) - Native lazy loading (
loading="lazy") with inline LQIP blur placeholders — no runtime JavaScript - CSP-safe rendering via a
nonceattribute <link rel="preload">hints for the LCP image (<ds:preloads>)- Crops anchored on the focal point the editor set in the backoffice
- Optional Cloudflare image transformation URLs (
/cdn-cgi/image/…) so resizing happens at the edge instead of on your origin - Optional CDN cache purging when media changes
- Rendered markup and resolved rule sets are cached, and invalidated automatically when content or media changes — including through the cache refreshers that reach every node in a load-balanced setup
- A JSON schema for full
appsettings.jsonIntelliSense, and auto-registration through an Umbraco composer
Quick start
dotnet add package DotSee.ResponsiveImages
Add to _ViewImports.cshtml:
@addTagHelper *, DotSee.ResponsiveImages
Define a rule set in appsettings.json:
{
"DotSee": {
"ResponsiveImages": {
"RuleSets": [
{
"Name": "default",
"ImageQuality": 80,
"OriginalImageMaxWidth": 1920,
"CropMode": "Crop",
"Breakpoints": [
{ "BreakPointWidth": 1920, "Width": 1200 },
{ "BreakPointWidth": 1200, "Width": 900 },
{ "BreakPointWidth": 768, "Width": 600 },
{ "BreakPointWidth": 576, "Width": 400 }
]
}
]
}
}
}
Use it in a view:
<ds:picture image="@Model.Image" rule-set="default" image-alt="@Model.Image.Content.Name" />
Using with a CDN (Cloudflare and similar)
The package and an image CDN solve different halves of the problem: the CDN optimises bytes per
pixel, the package decides how many pixels to send and writes the markup — and it knows the
editor's focal point, which no CDN can guess. Keep format negotiation (Polish, format=auto) on,
leave UseWebP off, and optionally set "UrlProvider": "Cloudflare" to move the resizing itself
to the edge.
Documentation
License
MIT. Note: the package references SixLabors.ImageSharp (Six Labors Split License) for building inline LQIP placeholders — review Six Labors' licensing terms for your own use of ImageSharp.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- SixLabors.ImageSharp (>= 3.1.12 && < 4.0.0)
- Umbraco.Cms.Core (>= 17.1.0)
- Umbraco.Cms.Web.Common (>= 17.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.