<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm" -->

---
title: JPEG-XR support on blink | daily.dev
description: A Collabora engineer shares the story of implementing JPEG-XR (jxr) decoder support for the Blink/WebKit web engine. After spending roughly four weeks building...
canonical: https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: JPEG-XR support on blink | daily.dev
og:description: A Collabora engineer shares the story of implementing JPEG-XR (jxr) decoder support for the Blink/WebKit web engine. After spending roughly four weeks building...
og:url: https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm
og:image: https://api.daily.dev/og/posts/w8sQQXsxM.png
og:image:alt: JPEG-XR support on blink
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# JPEG-XR support on blink

**[Collabora Blog](https://daily.dev/sources/collabora)** · 3 min read · 0 upvotes · 0 comments

## Summary

A Collabora engineer shares the story of implementing JPEG-XR (jxr) decoder support for the Blink/WebKit web engine. After spending roughly four weeks building an initial implementation, the patch was rejected by the Blink community, primarily because Google's WebP format was considered a superior alternative. The author reflects on whether technical superiority alone should determine which image formats browsers support, and shares the patch publicly on Collabora's git server and GitHub for anyone who wants to use or extend it.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/about-us/blog/2015/03/21/jpeg-xr-support-on-blink>

## Questions this post answers

### Why was JPEG-XR support rejected in the Blink browser engine?

The Blink community rejected JPEG-XR support primarily because Google's WebP format was considered superior in quality and performance across various aspects. The community preferred not to add a competing image format when WebP already served as a modern alternative, and further debate over format superiority was seen as unproductive.

_Developers tracking browser image format decisions find the full context on daily.dev._

### Where can I find a JPEG-XR decoder patch for Blink or WebKit?

A JPEG-XR decoder implementation for Blink/WebKit is available on Collabora's git server and mirrored on GitHub under the jxr-support branch of the shivamidow/Blink repository. The implementation took approximately four weeks to develop and includes a working libjxr-based decoder, though it was not merged into the upstream Blink project.

_Those building on browser engines or experimenting with image format patches keep up with similar work on daily.dev._

## Similar posts on daily.dev

- [JPEG XL decoding support \(image/jxl\) in blink \(tracking bug\) \[40168998\]](https://daily.dev/posts/jpeg-xl-decoding-support-image-jxl-in-blink-tracking-bug-40168998--vjghamydr) · Hacker News · 0 upvotes · 0 comments
- [JPEG-XL Image Support Returns To Latest Chrome / Chromium Code](https://daily.dev/posts/jpeg-xl-image-support-returns-to-latest-chrome-chromium-code-fi3ewablv) · Phoronix · 0 upvotes · 0 comments
- [Google rekindles relationship with jilted JPEG XL](https://daily.dev/posts/google-rekindles-relationship-with-jilted-jpeg-xl-icsnizefr) · The Register · 3 upvotes · 0 comments
- [Add JXL image decoder using jxl-rs · chromium/chromium@3badff2](https://daily.dev/posts/add-jxl-image-decoder-using-jxl-rs-chromium-chromium-3badff2-6m8p7tgqf) · Lobsters · 2 upvotes · 0 comments

---

Tags: [#webdev](https://daily.dev/tags/webdev), [#safari](https://daily.dev/tags/safari)

[View this post on daily.dev](https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"JPEG-XR support on blink","url":"https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm"},"datePublished":"2026-08-11T08:56:49.104Z","dateModified":"2026-08-11T09:32:25.488Z","description":"A Collabora engineer shares the story of implementing JPEG-XR (jxr) decoder support for the Blink/WebKit web engine. After spending roughly four weeks building...","image":"https://media.daily.dev/image/upload/s--VDukGCjf--/f_auto/v1722860399/public/Placeholder%2002","thumbnailUrl":"https://media.daily.dev/image/upload/s--VDukGCjf--/f_auto/v1722860399/public/Placeholder%2002","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"webdev,safari","timeRequired":"PT3M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"JPEG-XR support on blink"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/jpeg-xr-support-on-blink-w8sqqxsxm#faq","mainEntity":[{"@type":"Question","name":"Why was JPEG-XR support rejected in the Blink browser engine?","acceptedAnswer":{"@type":"Answer","text":"The Blink community rejected JPEG-XR support primarily because Google's WebP format was considered superior in quality and performance across various aspects. The community preferred not to add a competing image format when WebP already served as a modern alternative, and further debate over format superiority was seen as unproductive. Developers tracking browser image format decisions find the full context on daily.dev."}},{"@type":"Question","name":"Where can I find a JPEG-XR decoder patch for Blink or WebKit?","acceptedAnswer":{"@type":"Answer","text":"A JPEG-XR decoder implementation for Blink/WebKit is available on Collabora's git server and mirrored on GitHub under the jxr-support branch of the shivamidow/Blink repository. The implementation took approximately four weeks to develop and includes a working libjxr-based decoder, though it was not merged into the upstream Blink project. Those building on browser engines or experimenting with image format patches keep up with similar work on daily.dev."}}]}
```

