liam@goldfinch ~/blog · main
Back to posts · ~/blog/posts/boost-site-speed-using-image-processing-for-xperience-by-kentico.md

Boost Site Speed Using Image Processing for Xperience by Kentico

Discover how the XperienceCommunity.ImageProcessing package can significantly enhance your website's performance in Xperience by Kentico. This integration allows for resizing images and converting them to modern formats like WebP, resulting in faster page loads and improved user experience.

About a month ago, I migrated my blog site's images from Xperience by Kentico's Media Library to the Content Hub, aiming to enhance control over the structured content associated with each asset.

Background

Previously, I used Kentico's Image Processing integration with SkiaSharp to resize images and ensure optimal page size. However, this package only supports the Media Library, not Content Hub assets. To bridge this gap, I developed the open-source, community-driven XperienceCommunity.ImageProcessing integration.

How It Works

When a URL is requested, the new package contains a middleware which intercepts requests for images, and resizes them based on specified query string parameters. Typically through width, height or maxSideSize. The final processed image is then sent to the browser.

Community

True to its name, this package is community-driven. I was thrilled when Milan Lund opened a GitHub issue to contribute new features via a pull request. Naturally, I welcomed his contribution!

Milan’s first contribution via a pull request added image format conversion. Now, you can resize images and serve them in modern formats like WebP, further reducing page load times and enhancing the overall user experience. My blog already utilises this new feature, check out the optimised images on my blog posts.

Milan has published his own blog post, highlighting his experience with the package and providing real-world examples. It’s definitely worth a read!

Conclusion

With the XperienceCommunity.ImageProcessing package, you can enhance your site's performance and achieve better Lighthouse scores. Special thanks to Milan for his detailed blog post and collaboration on this community package.

// related

Keep reading

from-design-system-to-deployed-code-a-weekend-with-claude-design.md
#post

From design system to deployed code: a weekend with Claude Design

A practical experiment in using Claude Design to infer a design system from an existing site, explore a redesign within real constraints, and move straight into implementation without the usual design handoff.

from-spec-to-stripe-building-a-payment-provider-for-xperience-by-kentico.md
#post

From Spec to Stripe: Building a Payment Provider for Xperience by Kentico

How a Markdown spec and AI tools like ChatGPT and Claude Code helped me build a Stripe payment provider for Xperience by Kentico - faster, cleaner, and spec-driven from the start.

how-i-used-claude-code-to-redesign-my-kentico-sustainability-module.md
#post

How I Used Claude Code to Redesign My Kentico Sustainability Module

Discover how I used Claude Code, Anthropic’s AI coding assistant, to refactor and redesign the UI of my Kentico Sustainability module - replacing third-party components with native ones and creating a cleaner, more integrated experience.

taking-stripe-payments-in-umbraco-commerce.md
#post

Taking Stripe Payments in Umbraco Commerce

Step-by-step guide to adding Stripe to the Umbraco Commerce Demo Store (Umbraco 16, .NET 9) with screenshots, commands, and notes on webhooks and going live.