From 65f983b5900c4d8624decaf89b0a2fdc077c09ad Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Wed, 14 Jan 2026 08:10:34 +0000 Subject: [PATCH 01/13] Capabilities 2025 chapter --- src/config/2025.json | 3 +- src/config/contributors.json | 6 + src/content/en/2025/capabilities.md | 293 ++++++++++++++++++ .../2025/capabilities/add-to-home-screen.png | Bin 0 -> 17417 bytes .../images/2025/capabilities/clipboard.png | Bin 0 -> 18249 bytes .../2025/capabilities/compression-streams.png | Bin 0 -> 18766 bytes .../2025/capabilities/device-memory.png | Bin 0 -> 17731 bytes .../2025/capabilities/media-capabilities.png | Bin 0 -> 16844 bytes .../2025/capabilities/media-session.png | Bin 0 -> 17950 bytes .../images/2025/capabilities/web-share.png | Bin 0 -> 17574 bytes 10 files changed, 300 insertions(+), 2 deletions(-) create mode 100644 src/content/en/2025/capabilities.md create mode 100644 src/static/images/2025/capabilities/add-to-home-screen.png create mode 100644 src/static/images/2025/capabilities/clipboard.png create mode 100644 src/static/images/2025/capabilities/compression-streams.png create mode 100644 src/static/images/2025/capabilities/device-memory.png create mode 100644 src/static/images/2025/capabilities/media-capabilities.png create mode 100644 src/static/images/2025/capabilities/media-session.png create mode 100644 src/static/images/2025/capabilities/web-share.png diff --git a/src/config/2025.json b/src/config/2025.json index 01755c02ce2..37bdcb1fea8 100644 --- a/src/config/2025.json +++ b/src/config/2025.json @@ -82,8 +82,7 @@ "chapter_number": "10", "title": "Capabilities", "slug": "capabilities", - "hero_dir": "2020", - "todo": true + "hero_dir": "2020" }, { "part": "II", diff --git a/src/config/contributors.json b/src/config/contributors.json index 113fa3046ef..73056a591c5 100644 --- a/src/config/contributors.json +++ b/src/config/contributors.json @@ -231,6 +231,9 @@ "teams": { "2021": [ "reviewers" + ], + "2025": [ + "authors" ] }, "twitter": "dawntraoz", @@ -1716,6 +1719,9 @@ "2024": [ "authors", "analysts" + ], + "2025": [ + "analysts" ] }, "twitter": "guaca", diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md new file mode 100644 index 00000000000..a2d2c6bc442 --- /dev/null +++ b/src/content/en/2025/capabilities.md @@ -0,0 +1,293 @@ +--- +#See https://github.com/HTTPArchive/almanac.httparchive.org/wiki/Authors'-Guide#metadata-to-add-at-the-top-of-your-chapters +title: Capabilities +description: Capabilities chapter of the 20202522 Web Almanac covering brand-new, powerful web platform APIs that give web apps access to hardware interfaces, enhance web-based productivity apps, and more. +hero_alt: Hero image of Web Almanac characters with superhero capes plugging various capabilities into a web page. +authors: [Dawntraoz, MichaelSolati] +reviewers: [webmaxru] +analysts: [guaca, christianliebel] +editors: [tunetheweb] +translators: [] +Dawntraoz_bio: TODO +MichaelSolati_bio: Michael is a Developer Advocate at Amplication, focusing on helping developers build APIs and drink IPAs. Additionally, he is a Web GDE and has found his love in creating compelling experiences on the web and the voodoo ways of the web. +results: https://docs.google.com/spreadsheets/d/1tBTCtkEw0QEOyebuHIettqGEKw1gtO2EB1jkwpRKb18 +featured_quote: TODO +featured_stat_1: TODO +featured_stat_label_1: TODO +featured_stat_2: TODO +featured_stat_label_2: TODO +featured_stat_3: TODO +featured_stat_label_3: TODO +--- + +## Introduction + +Today's web browsers offer a richer web experience than ever before. They are not limited to the basic capabilities of the browser itself; they also make use of lower-level features and the operating system on which they run. + +These capabilities are made available via web platform APIs, including well-established ones such as [Clipboard](https://developer.mozilla.org/docs/Web/API/Clipboard_API), [File System](https://developer.mozilla.org/docs/Web/API/File_System_API) and [Service Worker](https://developer.mozilla.org/docs/Web/API/Service_Worker_API), as well as new ones in the experimental phase that will transform the creation of web pages. + +In the age of AI, browsers cannot afford to be left behind — they must propose sustainable, accessible solutions for all, in order to democratize the use of AI. Consequently, we will see the initial use of these new Chrome-specific APIs in the 'Capabilities 2025' chapter this year. + +## Methodology + +This chapter used the HTTP Archive's public dataset of millions of pages. These pages were archived as if they were visited on both desktop and mobile, as some sites will serve different content based on what device is requesting the page. + +The HTTP Archive's crawler then parsed the source code for all of these pages to determine which APIs were (potentially) used on the pages. For instance, regular expressions, such as `/navigator\.share\s*\(/g`, test pages to see if in the concrete case the Web Share API is found in its source code. + +This method does have two significant issues. First, it may under-report some APIs used as it can not detect obfuscated code that may exist due to minification, for example, when navigator was minified to n. Additionally, it may over-report occurrences of APIs because it does not execute code to see if an API is actually used. Regardless of these limitations, this methodology should provide a sufficiently good overview of what capabilities are used on the web. + +Seventy-five total regular expressions for supported capabilities exist; view this source file to see all the expressions used. + +### Project Fugu + +Before we dive into the data, I would like to express my gratitude to Project Fugu, a cross-company initiative aimed at achieving feature parity between web and mobile/desktop applications. + +Thanks to this initiative, we can benefit from many features that belong to applications only by exposing platform-specific capabilities to the web. + +If you would like to know which APIs are exposed in this context, please visit the Chrome Developers blog to find out more about the [Capabilities Project](https://developer.chrome.com/docs/capabilities). + +## Top 7 most used features + +{# TODO: Add intro #} + +### Compression Streams API + +The [Compression Streams API](https://developer.mozilla.org/docs/Web/API/Compression_Streams_API) allows web apps to compress and decompress data using widely supported formats like GZIP and Deflate, directly in the browser. This enables more efficient transfer and storage of large data without relying on server-side processing. + +Data is processed via `CompressionStream` and `DecompressionStream` objects, which integrate with the web's streaming APIs (`ReadableStream`, `WritableStream`). + +```js +const text = "Hello Web Almanac 2025!"; +const stream = new Blob([text]).stream(); +const compressed = stream.pipeThrough(new CompressionStream("gzip")); +const decompressed = compressed.pipeThrough(new DecompressionStream("gzip")); +const result = await new Response(decompressed).text(); + +console.log(result); // "Hello Web Almanac 2025!" +``` + +Since May 2023, this feature works across the latest devices and browser versions. Available in Chromium-based browsers, Safari and Firefox, but might not work in older devices or browsers. + +{{ figure_markup( + image="compression-streams.png", + caption="Compression Streams API usage.", + description="Bar chart showing a surge in Compression Streams API usage across both mobile and desktop platforms between 2024 and 2025. On mobile devices, usage skyrocketed from a mere 2.3% in 2024 to 12.3% in 2025, representing a more than fivefold increase. Desktop adoption followed an even steeper trajectory, jumping from 2.7% to 14.0% over the same one-year period.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=951480556&format=interactive", + sheets_gid="1897009688", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Compression Streams API from 2024 and 2025 on desktop and mobile. + +Adoption of the Compression Streams API grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. + +On mobile, usage jumped from 2.34% to 12.33%, and on desktop from 2.69% to 13.97%. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. + +The API is particularly appealing for data-heavy applications where streaming efficiency matters, which explains its strong adoption curve. + +### Clipboard API + +The [Clipboard API](https://developer.mozilla.org/docs/Web/API/Clipboard_API) provides asynchronous read and write access to the system clipboard. It supports plain text, HTML, images, and other formats, though support may vary across browsers. + +[Security restrictions](https://developer.mozilla.org/docs/Web/API/Clipboard_API#security_considerations) require clipboard operations to be triggered by a user gesture (like a click). + +```js +// Write text + +await navigator.clipboard.writeText("Hello from Web Almanac!"); + +// Read text +const text = await navigator.clipboard.readText(); + +console.log(text); // "Hello from Web Almanac!" +``` + +Supported in Chromium-based browsers and Safari. Firefox has partial support. + +{{ figure_markup( + image="clipboard.png", + caption="Clipboard API usage.", + description="Bar chart showing the growth in Clipboard API usage across mobile and desktop platforms between 2024 and 2025. On mobile devices, the percentage of pages using the API rose from 10.0% to 11.2%, while desktop usage saw a similar increase from 10.4% to 11.8%. Overall, the data shows a consistent upward trend in adoption for both platforms, with desktop maintaining a slightly higher overall usage rate than mobile in both years.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=714385047&format=interactive", + sheets_gid="1966659557", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Clipboard API from 2024 and 2025 on desktop and mobile. + +The Clipboard API continues to see steady growth. Mobile adoption increased from 10.00% in 2024 to 11.19% in 2025, while desktop rose from 10.42% to 11.75%. This reflects developers increasingly moving away from legacy `execCommand()` clipboard hacks and embracing the async API for copy buttons and paste workflows. The year-over-year growth is moderate, underscoring that the Clipboard API is now a well-established utility rather than an emerging capability. + +### Web Share API + +The [Web Share API](https://developer.mozilla.org/docs/Web/API/Web_Share_API) allows web apps to invoke the device's native sharing mechanism, enabling users to share text, URLs, and files with other installed apps (e.g., messaging, email, or social apps). + +The main method is `navigator.share()`, which takes an object with the data to share. The optional `navigator.canShare()` method can be used to check whether the provided data (especially files) is shareable before attempting. + +The API requires a user gesture (such as a click) and will trigger the platform's share sheet, letting the user select the app to share with. + +```js +const data = { + title: "Web Almanac 2025", + text: "Check out the latest edition of the Web Almanac!", + url: "https://almanac.httparchive.org/en/2025/", +}; + +if (navigator.canShare && navigator.canShare(data)) { + try { + await navigator.share(data); + console.log("Data shared successfully!"); + } catch (err) { + console.error("Share failed:", err); + } +} else { + console.warn("Sharing not supported on this device."); +} +``` + +Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. + +{{ figure_markup( + image="web-share.png", + caption="Web Share API usage.", + description="Bar chart showing a modest increase in Web Share API usage across both mobile and desktop platforms from 2024 to 2025. Mobile usage grew from 6.0% to 6.6%, while desktop usage saw a similar marginal rise from 6.2% to 6.7%.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1903144577&format=interactive", + sheets_gid="930326182", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Web Share API from 2024 and 2025 on desktop and mobile. + +There have been minor adjustments to the usage of one of the most widely adopted APIs, which currently occupies third place in the ranking of most used APIs. + +Adoption of the Web Share API remained largely stable, with mobile rising slightly from 5.97% in 2024 to 6.55% in 2025, and desktop from 6.15% to 6.68%. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. + +### Device Memory API + +The [Device Memory API](https://developer.mozilla.org/docs/Web/API/Device_Memory_API) exposes an approximation of the device's RAM, in gigabytes, through `navigator.deviceMemory`. This enables developers to tailor experiences (e.g., serving lighter pages to low-memory devices). + +The value is rounded and coarse-grained for privacy reasons. + +```js +console.log(navigator.deviceMemory); +// Example output: 8 (for an 8 GB device) +``` + +Available in Chromium-based browsers; not supported in Safari or Firefox. + +{{ figure_markup( + image="device-memory.png", + caption="Device Memory API usage.", + description="Bar chart showing a growth in Device Memory API usage for both mobile and desktop platforms. Mobile usage increased from 5.0% in 2024 to 6.3% in 2025, while desktop usage grew from 4.9% to 6.2%.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=799153560&format=interactive", + sheets_gid="1811570014", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Device Memory API from 2024 and 2025 on desktop and mobile. + +The Device Memory API saw a noticeable uptick, moving from 5.05% to 6.27% on mobile and 4.88% to 6.21% on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. + +More developers are leveraging `navigator.deviceMemory` to deliver lighter experiences on low-memory devices. While adoption is still limited by its Chromium-only availability and its intentionally coarse-grained values, the growth shows that sites concerned with performance are starting to make practical use of it. + +### Media Session API + +The [Media Session API](https://developer.mozilla.org/docs/Web/API/Media_Session_API) lets developers customize media notifications and integrate with platform-level media controls (e.g., lock screen, headset buttons, or smart displays). + +Using `navigator.mediaSession`, apps can define metadata and actions for media playback. + +```js +navigator.mediaSession.metadata = new MediaMetadata({ + title: "Web Almanac Podcast", + artist: "HTTP Archive", + album: "2025 Edition", +}); + +navigator.mediaSession.setActionHandler("play", () => { + audio.play(); +}); +``` + +Widely supported in Chromium-based browsers and Safari. Firefox has no support for some important features. + +{{ figure_markup( + image="media-session.png", + caption="Media Session API usage.", + description="This bar chart shows the usage of the Media Session API, which uniquely shows a slight downward trend across both platforms. Mobile usage decreased from 4.9% in 2024 to 4.7% in 2025, while desktop adoption also dipped from 5.5% to 5.3%.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1577112625&format=interactive", + sheets_gid="1863050303", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Media Session API from 2024 and 2025 on desktop and mobile. + +The Media Session API experienced a small decline. Mobile adoption dropped from 4.91% in 2024 to 4.65% in 2025, while desktop fell slightly from 5.46% to 5.29%. These differences are minor and likely reflect natural fluctuations in the dataset rather than meaningful shifts. Overall, usage remains steady, concentrated in audio and video sites like music players and podcast apps where integration with platform-level media controls improves user experience. + +### Add to Home Screen + +This capability allows users to install a Progressive Web App (PWA) on their device's home screen. + +This is triggered when the browser fires the `beforeinstallprompt` event, typically after the PWA meets installability criteria (manifest, HTTPS, service worker). + +{{ figure_markup( + image="add-to-home-screen.png", + caption="Add to Home Screen usage.", + description="Bar chart showing a slight decline in Add to Home Screen usage across both mobile and desktop platforms. Mobile usage decreased from 4.8% in 2024 to 4.6% in 2025, while desktop adoption also saw a minor drop from 5.1% to 4.9%.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=398812036&format=interactive", + sheets_gid="1084353718", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Add to Home Screen from 2024 and 2025 on desktop and mobile. + +Adoption of Add to Home Screen capabilities remained flat, with mobile usage decreasing slightly from 4.78% in 2024 to 4.59% in 2025, and desktop from 5.12% to 4.92%. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. + +### Media Capabilities API + +The [Media Capabilities API](https://developer.mozilla.org/docs/Web/API/Media_Capabilities_API) allows developers to query whether the browser can efficiently decode and play a given audio or video configuration. + +It provides insights into smoothness and power efficiency for adaptive media streaming. + +```js +const config = { + type: "file", + audio: { + contentType: "audio/mp3", + channels: 2, + bitrate: 132700, + samplerate: 5200, + }, +}; + +const result = await navigator.mediaCapabilities.decodingInfo(config); + +console.log(result.supported); // true or false +console.log(result.powerEfficient); // true or false +``` + +Widely available, it works across many devices and browser versions. It's been available across browsers since January 2020. But still some parts of this feature may have varying levels of support in browsers like Safari. + +{{ figure_markup( + image="media-capabilities.png", + caption="Media Capabilities API usage.", + description="Bar chart showing a surge in Media Capabilities API usage. Mobile adoption skyrocketed from a negligible 0.6% to 4.4%, while desktop usage saw an even larger jump from 0.8% to 5.0%.", + chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1359620848&format=interactive", + sheets_gid="1154224831", + sql_file="fugu.sql" + ) +}} + +Usage comparison of the Media Capabilities API from 2024 and 2025 on desktop and mobile. + +The Media Capabilities API saw dramatic growth over the past year. Mobile adoption rose from just 0.61% in 2024 to 4.37% in 2025, while desktop usage jumped from 0.75% to 5.00%. This surge suggests rapid adoption by streaming platforms, which use `decodingInfo()` to determine codec support, playback smoothness, and power efficiency before selecting the best stream for a device. Unlike many of the other APIs that saw only incremental shifts, Media Capabilities is clearly on a fast adoption trajectory driven by media-heavy sites. + +## New features over the past year + +### Built-in AI APIs + +## Conclusion diff --git a/src/static/images/2025/capabilities/add-to-home-screen.png b/src/static/images/2025/capabilities/add-to-home-screen.png new file mode 100644 index 0000000000000000000000000000000000000000..ebf1d9d0caac0fafbb55251d63245360939f876a GIT binary patch literal 17417 zcmd73bx>qamn~Yjd*klzjW_PzxI^LI(73z1yEW2S0foD}H|~u?etC(Aj*ER@axxBi*xw(moO?Y{Io&Gfgss^vGZ=9W9>>nH!|18TdEIvCs zyT5-}T-n^*+AgoGI{fozY<%MW;UOU@b!Bz!_~f*uwLLXGtF*kbvAOlv%-qiIURy_J zZGGe7(z0(@#?;JmS5I$dcHYS7Sae)sZb9Mf+)a#_!FGi_4?q>XwhW4R^jGs4m_XC5&Eo~iz#igA~ zc$?0$~ji{rR=CT3*vuSyeMOwdfaJ;NY7In(Xoj z&90m2GqwwCZf)-#oZ^!s>_EaAr&d9y!9C-eIoQEBC?>zf{% z-`W5G(N|dsQFV{i)84=jo&f;`Z{@h&!7Kh2!AF@yA3U-}6s!rgNOG$zdk6+*2j{=@#b=V9DJj+14vwNNa7;ZIo<84oSF} zl?X?8_%kwykANZ{oRK!N5Wx5&A$YH|7J~otE__IW!;hlfOV*$}kNtXHL&~6qfMPBS zI(AhNcv(Y>km`eUI9m|q`z^3@ldT6JCUc!PBmQ>>*yv91{s=7jhGzm7k}$x2i)Y@& zt?fLJPs)TPKJ!;Qgz8(25Ei0l4@ztQPKUt{HW)FPK80K3PfR*Etr`RX4%$7hj|P?@ z-iEdoGMJVds~J>N3#G*jH6BLF{jo*p%BqMttD|M#lY3RO7Girr2IDsda*bSo*^-Se z6PL}Wid_4dW%YX1c)2?QQ}0f$5J%!Yi~Cj;$LXS!pU-)*grX2cgXEV+{+0?{7Z5jEVz1a+kx!{!HxDP1uMiFd$7h$A1ByPu2CinG@Uac- zLDyeD@QIILF94?B*Lw+qvbsv2$(^X*i$K3z%Y*v&pw4fh;~IH2FWw@W_B%TJb5L!Y%$og<@1FH3E z4Pj;F#q$G?(H4p9Yi1aKw$Hk{43dJjM>wN#LBoj8xlWhlgI{T!3@>S{nS)#%YFyGK zlM?U?>~+yPqBMrsX6f9(erR839YWybXEQks~r6Rm3jo1JSjQGV1aHK$I>$64PoHQuHdYY#F;M6Q={&}J6}8%i6V9Y z?*$hW1JUq&w{?agf+y^!gV5wvUhGY{kzySKHs}?qS8#*L>RwhzFBjGAQwacXu#q{UHB<8;2pquC4ykgaK zaEo6Tir9BYze~p#j6=z5e&GVkur$Vrl2#Wjbf!}}c({!LF2fYi0AnM3GjXtKpEZ4J zlJ2L!Bq8}?W!ra9I6H_OVe^?Mk61OPjWnPl2Vifw>O>@5almQr`ZnB!Gr#+IvGgDQ`wV*R@p1X!7kdp93)yz zk!VxasE7T4SeI;M_biXS{{aIhP9lNz{8oe0Gnogid8~bRwzb+?bw&3X0Hm=S9HX4W zu!I<+xf@b(I(pn$eUm@v@xsXCNP-tae>S#zZfpS~#&sHAZ7@%7zT| z_Bl}p-gp*$^IFb||3fUbNjBlq?Gu4qnC=I{WTt@I5G6O4l?ufy-H}sUe`t?SB6XF+ zBZ-<5`k00x9){=JGBc*cnX4G|CQ&kIt}mHAS*9_<;b{H8#Xk+n4@YLmb@(Dy)Y`1# z&lm|l6a+O4Ek{L{Gn%O@9`_Um*1~M-_22do2y!qIXnWQ@(o76;Q-PZrVlsP0GodxH z)%M60zpdR~_2&`gm&1cli0HjefpydfAUN{0)9$rJ^jd`Vhkb(G<2|i@jCk|0uEqG8 zU+;pPJ!Vk+NXrrJPMBFrXds5p7%P=@*HUk#GD8^|jnO420_{1E5B=_7nsjxdR4AVp z!gcEy_*jamsieuKmKI8rCRfP-TZ=C>VAFhlh6_1~by_T{P-$ta0_le;tPfqn>5l=9 zlxZs1W}g)C89*fP-sOh%us8z@Ot_gBRN(5=z=fetOCkw=rL#>SirgqUev_xN)9>M< z&s5-pQfM6i4SjefwqfrW>-xX^-!wOq)qacoB+AER_$Ru0|EEBNOB8&q4rzkDpL0;- zVix2=t)2ON;QJlDEO{X(UOsSj!WCoC0y?zTRW7vT9`dD0HaTd2`I`~G81Siw&I?4Q zhS8c252|HbtAVV)Vi3Zd{w(?yj?$BrbKP_~XNS2O^$#W3Dq@z{5F}3~x&ei<+&GNr zbL7f4)UI{8jDGDKWK)fu970eg%bn zh=$t*;X0fW8prbe_SvlaI2vsDjY6%olV2II5CDxsT>0}&07*fkC~<~aoJ#`rlOjjF zK94YR-E^Hb09m@2%M{o;a;gh>vNTI8g~hQ(&~;4k*A`l}uLL9^IyE`~exb?+V6%CW zYNkVLLdO&i2e!~GRVx#8_M%bB1NRf6?N}w8Y--Mi&8c<6yF_oAZrEGbg4rJ1JRUS! zhTYW$wYknfJ_=f9iDXb;Kg%ABxEfx?Dv3#rdqu=JSfGM5114-cTcw6-IX)DJzX|y` zWpwzZGVS>_BBwFX(O_vPn%GH?4?HjEHu7nrfjG}DjRPz}PE(%L{GImJVI)f7fK|sZ zQO&TAN==5e^1VgsEC+UE(tCnvlpq=ZXK_-YtZFRljT?I}pbkdU#>y*!91M)j`5Q%b zv-3<>D0)jd08N|#CBHzaI0#f+%H)7v{7eo0ql%62AdqCH)J!4hODl)U^iMBhj?L)9 zZjNZKzRNMtXHntGOpLyf&f^JTXiEvxi*dlD?HAagCK(4HSV+<*SwoKomYiR~nESEF z1DR(bkrwH0V&~;r(N2|!|Cx55r-;sSCITcNmx?8odxz1;WvL~TiwV(wj^hu3Vy2;S zGPq)nKGnnE+VzS>|Eh3gnU_t^ApbX3)*Hor?i~Ga#000GUbwy{CyHnQXS)>v4~K zLVn@h$wsCEm-&J(3;B=^69BvF5u$z08pm) zoZv;6k^2e~bd9HW+Esp3jTMIcgMiva>0J6K@mAmoVPNd+V5|`KM*_ufv70MV$J_Id zoU_aBah(Y6rj)hmLPHH%vn%aydp_~x)8o-xrc+gnh`t^Y?*;is+k*qQ+LlJ-$InIc z9yu|DowMjEG0n3Z+ah1uy5cmm6_pz}r z>p{Dc7PQNY#iU}BDQM7u?l*|rRdKzmteeIIkZ{{DRGkU?L;Uy6e?WiS+btDp$akW@ z)I&zAaV4pU?TGLgI#rd|v>1sf)K@^Nt1U0*c*m`-rOqeBduoTHi4+FRU_!;k-04VK z=4}LoO$B!3ezyO4dB}3Yev=kr0uzTWxi$xU zl{@mHAoa$wJ;PxJU-3b!Y`PJ=X4QCWG7p00S<=IZU=4b; z+3|m2?=o*vc!FlXR@~w_|7=3k?4_kY9&Mo+Fj%EC`Vx}798_~^9ReqVPViRM7w&8HZF44`R^ zMQnuv${g$|YprPZ)@6YCJ5u5`%&s)TiO3}*McYPULJJTuudCsLlh1^xVS_1t(&9LMIGE)i%$zk-j{?XUTWt%^2S~*g{?( z)%pA>OJpu+MEVp&nLrUTQ3m#cPvuZHC8*?tF-HlxTzbPwZ^@PI4^wvwnnzK44zd{f zua3^77oFaxhd`Di|J>?)B*w!5JSZ#zq>M=ZO9kcvMuyu`uzl-yNNWc_P^ zvYTVp_H!3Cr-x38sGOXXqWOOnh*6lVDrq#K8GyRdXeL=L_trvwmugP&{t4MM z*w^-GATNR)OS*V7CAU1O6nH>0rGCMqRLhs_Gl##uS{pWk$gy1sbD($__z^;|u;<0x zm-DbE72$=L6q63)2IG$SAt38WWSw`HWKl3bKPtZ`B6I<3ziDKYkNJ1DfeLKb zSI*;~Is*2A^bNGXObplfv&b+G8 z+W1i9-#lxV0nJAi!nvq%JF5qMu!^{QSTFzv5Nxhc`VSTuKzZ&<+s~j!kw6JY<`!sg zjGZ>B(x&wHTxf7(Qs&=q@CfN1v2~kO4V39t_CVPiGyZ01$JAMyI@z}zDkgW#$9jyc z8m^pV=b#jTviu<~AMGdm)!V9;DSm(fC5XDlQJ2w;^N%YYe;XfF?5ly?5DFM6| zdl+E1`Zl^KY7VEh8#5%R=P)q|v+U*vMtb_N zesG_lwvoJ*j3S=FGOAHS+V9qzP3KetL+h=(@GhnOZJAwJIHVwY)1Q2|Ykl`+B-EHnVSN z46dgyDnCtRy9^8~GrO%sve*7h=)NaW5^9dp1;a8I*z#T17)HjaA98$@PZYK%_3KwD zNKD@=nHvN|1PV%!lRiZlg+(;pC8erXo7^jT-|dGSavZF~mzzUj>=$hFNsT zCKfvs&#GZ55Kh|ExHYhN*UY#vu~^>Ol#j180&XH)WSmAhFh1h%mIFgtB*r42rS?=r zU_6!ka7besz$SWQ;-)@iKNV26;N0SniHwv$5p8oV@Y!fr^p25*Ef^=Dl&n#~!W?Ja z$JC$=uVh>pGW`6*#R}ho zB+N7{8Ga=kO?(mR10h_^DFn`-ReL~GiPbzH?@yOuwPa=l(2q!S8x|Ur?p;g1Ezo5{;1c3a)@dKa!DV`xO)tBPBNZkcvBMo-H*71 zi!{FK3)LaS0wU8i`7GPy z>0rAaTEIkx@=<$A(&r6{61%&*NGiJfe&eSL`We=jWsJmD5W{5#6A%M1ftsmvPXH;JqbE_eqIx1UuZonAh`v6^9#`|pucc28W@kt?5XQ{L zbIKjRUtgQAGzPjo)O)hXBY?Ph?x+!sE&u}C0e8D-gE|k46YbFtrNedG=`qmwC z+k#MYEBCY*(_H9kl$W{q5+q5&yyhwy83P@a>@?gkM(qhv;)urpq~-|Sx4tpx-jO~8 z6v_(tNJAZ~5nqb8yGKhjPCA!G_!$bhKt!!zYcinIDk+g@wZ}ctlX^kD`QdoVW;o9> zVd~66T*(-FLQCD3g_np-yV%b}2ZK{mefl2R;pGSLj6z+khHDNU51;xnz4IAb!NK?9nQhJs@@P8=kXn$QkI z>HkIbCj%iIyJw)BWh>Z8DGP-xnO1G`5dmS+G<&>S*)EPr?4xziw zpg?QLqQU<{{#V02RC26K71Kre(X};%Vr@Ak`)|8M8!siXlmI!tT`vF8Lm&2ecE(qW z!#EuR*gm$n?ytHaE}39!8w&LXD?}$+gAhi09u>!Oy%(7ExA)+^b25}-ewlFF_ipBp zcJGnPOH7&H({|E+srv`rbJcVCT~hfk=X@=kuoXm0LUtHtP}u_CbC0;!CG_+zi+=Cs zw%exOeQS*}#=a)j%6L=|$kuS;p0s&u&IVNPTIB0Pzj9W?KJkGsF> zRP>V980&cym)yvh5?6A~#>#(f^rSzz2R7qdEI-w&w4?PuBB<|52&Ng*A9a}3VV_9q ztoXIdgfooB&6v6og{wH(!N|o}LTNqwx>RAs&vM{C5QHA%eL$P746?x0Ta(p?2@9*MbG4t8i0htD_8o-=H@n(i*&V448X*5W6F8E zMK0GSinKj-lX6&*BDI@4&C6uPJN}o|nMsy3H3PcA;H%5yS0xUcqS5VwgqWS)?aShl z(Y-zo>VtJUWe7W{Qw*B5l<=Nz+7|PpAaB9p=qn4PJS6keh zsoZ|4L~QB_`>0khWxf$ENy^P=c79(ML;=v@bO-0HF&nhoI>?^fTWIsu3{g(?Bej=r zmEaPC>f{kw&R(`t8igJ7)se|_>6UM5i!INQM5HE(L5*JXUlY(`k7*!unh96O@)@*i z(XdnW`E~8ULWeZ|M$K-ICk(RU-ZrGtf-uC=s{JG%ejDf@orTTQb$Mkh6{4`KCG<@N zfrd~DISe^*4c$sj8HtLZNTecxLE`V!Ncse6ZJgB#G3k$i`x7O1voNs@GY3!9ilvh} z6UU>k%1Si&1E*O*Pv{9`FEe9qhfBwngrN0U^pQA5L>zIl7dJ8ScDIxJ_xJQBfI@y^ z@EwDCxs8z)*xZ3$E#j;q$%@J9ORv|TuO(3eh!$s*`#4E6mzkW+Fu>y&0??Y9^6EHk zO?7AS{Atr0uggi{;paSHZu}WGy_*3-d-+72K~7>;6HnH|q#3+I5k~OcJPV0T`dRxE z<+KL1+}&x6_}t8nN06)WupdkLA75&UZo=EK@ua4?a+i(!K!8H#OpvRYw7u-Yo-qS+ zzaY%gn42dJG3JFeQ*WE2$`+24VeHjZw3)VSgPYOP@c4!`P4Lw+xfp-d3 z;Ph#V#>S4Uw#F zz{ag))V$6m5G zFIn!&!ISqz5Y$9$pkl#1ZaS>u#kgO=A!)>PG?3$~1Nb>n9^7avEnjX>{)w*(WHW4- zUcHuEqVBEG>t*7=QbM3Q{X2;}*|$QgSuU~aw|Dt?qI$*${!^yF50u;{>$ZebWlGh@**eN zsho}0v%^7!w}@)v0hUS?6+rD!y_ewIMTQF0(*W>xPO@>ueexElzIeQNMKo{1{F~Y4e}8Ms$gNcK>&~{5 zg%nhJTD8BOInorV>#L;%f6d1sl#N~XbG6)rIoZKqsyHsZI(FaWTwX&o)? zFY=V&5fb zKym|#H#(@~)uh0!Jr_bbQf zoR}Go*kR8`Q}6x|gqbh}_b{#S1BHbrNp9(k3(?dEb`4Kg`N*6>M2W1hSX zp6MOBc1iY$Ss5_!ZBS1YrjmU!X3W#qJL96zEd#A~rg#ZH`0*$DO<3|#H+-`k}2$47W}6(~ihZ2gO4Rx1{OIcupms_29XWxApq zR7%&`Jvw`_p}lgt|3xlX$6|FE&{2rSx+X<9_8+8{CT2nvLS*~T zq1!n_(LU=6OqD-wt%e9?F z6}~Ax>LUZuKzkUs-Q|0c^4G=tXP`y5toutVpdh3v*dTYsVWEEWWV^5FBFNP`U-nSL zh(2|bqDD^bLjL)*2~ZHD=AZa`RZn#R&I@d~*ABE_OPAAMCZ@j5ev`6!DRIerhXss9 zbdWC)%My5L?&W8;PkQ=vtp$4)|7J+stOMQ=%MXug0q9E3v8q;l=^M}xp)0w++LC}0 zi5VKt!!V!Dg0od8Omehr*B)X! zrmi6m*7h_WG9W1H{?T^xWwmm}mO7ZLURV}xilc!ix5;mfWBlZIs>^ZW?TRmih^WD^ zDgl%IT5?h^;?h}x4V-t<)ai_a-a&5sHzfQCsrxWMK>?-mL9gm0F2f!WgGo@pZKtA0 zV!G?ebsRKtQDsQ7dJu^M7~7CF(xB;A`cxJv#W0f-m#&mo7R; zNaFb+FM~VVb*veq3VFN8T)sPtV`j5*d8u6$HC8RGi*&@2iNUE_^2f||i2m#nmG<2; zOs-J>BVzTP@$cpqI3I{IwPNWYk@}<@4jE7&r6`aKvgBMFZXS*Vko~mx*48@ud==W{ zjm!#*zSw^{-Ku82CjmfLn{#GfIJ4C_LxB*HF*2|!w{<8t$wvT)>3**%2_-C@jWoap zgnX{E9c=fqyxlNd^4vlD2+!hEs-h*P2Nf{#%*CppXVcnD1Aqq!kQ$zMYn4|Vsz6*K z9{GEk=woOD@+iUF)8QqRq)#Dnuz*_gE^#EBfMwJ-prt$jUF)EDS+1j9z=Du7V2fa? z7&~7+{2T!QS?Q@b=If~E6b?hy5QbFls5aZ<00a2G!J8a+S}||NNgnVEQQ$)TELTov z5(W^+bz08B`fCwD)({(r)cJIvss}*VD`jk4)#>^;y9anBbWrL-UVIQj1QZf_SubJ( zB%1iYm#42PxqmnttR{2HE`0AZ5(Cuw-iyfl4sih@st(lNxNk}TWYu90q;i@EfCwh{ zqUun}Y{&hW->mnJ7n;hA$s1FK8ut@6mE9L<<4Q_^9_i7U&DC1DdD2AZ z(6tdpWtvg7wtyUODwY!$G6U>^Pz!4 zDLk}5Nr0%&B^4hwd9Lu{aAKm5{~8MfrtZi0DOaS))s$7`W@SC^6e>G0ycjbhABx_y zOmROO5tI3wH)%8B=-+-{%Y1-=V4xnNGj(0Cz(7Z4+GA$Utr*?K;5t;& z22#r_z|2z~v_b&I-uYnKr~k$@1LGj)=g_tF#cpx>R9-7^(B5D}+H$*wUu}TtS$G5aK*yE2c?S zg3@_{Bie>Z6Q0I&Gods7OdX~@gNOv`D9L#EmaSUo!)>dvNKgVbL11hf`tmKB;+03(3w<4?l!T zrg44xaXU2LtX#Sk$Tq(eRuMc(GG6!54%%3$s= zi-;nL(bM|2f)%V!le(3unh3jvGIz|EsXIqT#SnUlvJpeA(e~iqutP^paABCvWLO_0zOkE z5L=mE1&cM4Bes@>TGN%|jUTKIGwy9=*3p|SPDPXPIW(c?`Ejf-M5>~oH^`Pm~ zD>i)On74ezD^OPZlh>YS~kkmNo3per9f(Rm`czTy;z(fi3+%r z%_|Vx1=7ddJ2CXK!}#B}CvBc7OF?x-QyYzv!%lcsyL+?R^^5 z41cQd>U|)Y+jO+KRkOsFbQ`1Ao{*&B9o@ z)jsfhG&=vIwV;C5m7OY>XQAthHT2tyM1-qG*rar!r023Hi!+c5DgP-pV)Ygc@AL(uTvXc# z`pY1VA+g$IDLk@?&fq$mR8maHcI}5IUp7!Nq#@@s?&aI#k%qY;R_V^4t+3O)ryB}i z3Y+yj{nxBLU_^kjr_npDH2%ert9k8NXzN79vlvD+5c@LhG$TC-} znncRx8;Ephj7pXaWMr~una%G1?qN_|WgA$ycy?tSI;5${=kMba_P2@TM%#PfbCdp^ z#Np;ZUwhzCfy<;!9j01{03y0A*DX{vnJ{#1|B+2Him>8~PJYtH
{Yw&02B|dW2^+3S}OsW7KOiVwzK0%I8=1 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 literal 0 HcmV?d00001 diff --git a/src/static/images/2025/capabilities/clipboard.png b/src/static/images/2025/capabilities/clipboard.png new file mode 100644 index 0000000000000000000000000000000000000000..d36269c609d9dc0e6b595de39d1649346b61c8df GIT binary patch literal 18249 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 literal 0 HcmV?d00001 diff --git a/src/static/images/2025/capabilities/compression-streams.png b/src/static/images/2025/capabilities/compression-streams.png new file mode 100644 index 0000000000000000000000000000000000000000..ab697ae553cde0d094090a1d63ad11d477842a83 GIT binary patch literal 18766 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 h+B>m=79_?ok6!=) literal 0 HcmV?d00001 diff --git a/src/static/images/2025/capabilities/device-memory.png b/src/static/images/2025/capabilities/device-memory.png new file mode 100644 index 0000000000000000000000000000000000000000..4b52a55d083b510e45d0a643e80b254aab65a50f GIT binary patch literal 17731 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

9G%3>D6T=9a!k-d$7iW-KsIr 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 G;Qs(|%!=#) literal 0 HcmV?d00001 From 65d0aa96466ad6da5ed96b26ae90fe8bbcb1ddb8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 14 Jan 2026 08:13:32 +0000 Subject: [PATCH 02/13] Optimised images with calibre/image-actions --- .../2025/capabilities/add-to-home-screen.png | Bin 17417 -> 12507 bytes .../images/2025/capabilities/clipboard.png | Bin 18249 -> 13792 bytes .../2025/capabilities/compression-streams.png | Bin 18766 -> 13989 bytes .../2025/capabilities/device-memory.png | Bin 17731 -> 12745 bytes .../2025/capabilities/media-capabilities.png | Bin 16844 -> 12438 bytes .../2025/capabilities/media-session.png | Bin 17950 -> 13227 bytes .../images/2025/capabilities/web-share.png | Bin 17574 -> 12731 bytes 7 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/static/images/2025/capabilities/add-to-home-screen.png b/src/static/images/2025/capabilities/add-to-home-screen.png index ebf1d9d0caac0fafbb55251d63245360939f876a..c25116edb36b3f2e8133c6e31ea1ce35e975dffd 100644 GIT binary patch literal 12507 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 F{|^+cPL}`x literal 17417 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

{Yw&02B|dW2^+3S}OsW7KOiVwzK0%I8=1 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 diff --git a/src/static/images/2025/capabilities/clipboard.png b/src/static/images/2025/capabilities/clipboard.png index d36269c609d9dc0e6b595de39d1649346b61c8df..3e21df88d948ff2fac607f8589e6e89bf0854807 100644 GIT binary patch literal 13792 zcmcJ$c|4Tu`#-ECd!Z~TiIOnLz7#^%2_a+bhU7N(Y-KHGNJv>mwp6w-7-X9XHOQUG z&RB;c>)5jIJ=YAM-{Tc`dj4SMJg@UQ&f`3e_p#1(Mc*~lVP)cFqM@N- z)ziIgLPK)`Lql_Xih&lGaoWlh2R^Rcy>n0NLo3$7JLb=yKifMyh^QD|F};nXqeAX{*KY4W$@6@T%ystt$y#(&_ZT()!YY; zTT)&wOn?4_-GE&c2s{~o6}xFwT3XRnz5%=TERBZ7FnnB$h6X`L^8{c9c8ul{h&p0m z{@3Uhl!oSLgg;JmG-BhTp*b8;ZaW$s5dlU=ME*_k|48JA-e1P;=cb#;8xPWFN@i}9 z_NmM=j;KkvFD$>EfBrjBR_*jHs7`q@cCU!XZt-RCa6+rHUG15&l`DU88XNL9ar3J9 zKBH-!4v@8E3A89!IMR;c5}H=aKC_zp#>0+iWMA;D08{9~Wi~EgTE6tVymRSBF=BE! z-rpR$?MIoN*q)Pa9lVcLU`M&CrHybxcAhXWvk`xKO=Q&7Ct^w>HhRQiNP!y&ItH@W z--fMUBXuRw1UW(BGbk1}Un}S-*fG4apnKFZyrk$VF@D5H5oYr>Vy+kyyE#6WuRx)7 z%q22g63gF}5Em4zQEiUWQS$MAPmeEOwaKd$gH69LC77&LVl{VjdFCIcW@XQXDAy%s z5+uJje+X_tzutD=w}B19Jgd1OFJIUDlfGKv%iCJ)?3nqz4n}_Z{9U*VUZJ-hs|elz zfAZdk&(hIL(lfa3bh4wtD^FZ{e8X74Df1~AQ`)7-+{nrk?wnett8%k_UTGEvX14Q{ z=QLOQ*V}^dL$Tf4e6YUD4Wnm>xrt-BYBXbVv(}a6YwmSbo;IrO!H)Hcdkzx6nDIN- zg*SYMFY1NOH3)(#MaFnpW0G4-%;Xg$Du#~x+t^i&5@ciD~`^gwg=g@4gq9 zR_35p&puxZX7b9U#7|aOZKht!&tUXO+Ri}F2&ba}+K3;YusbomiR4_h-EiiMvV55R z>i7B5>7lN?UHrq!RqQsV7~|Ws;iJZlBHg&&V0TOEK=IGUaM9jFc48DWLG3p5oud*L z+v z>KoO_>|MNcT(le1P^E)mXsQnX5+YSiK0Wc!f|2l%ANS(>YL6B)OB}TC2orbwT;dn` zF<=m!?rqbEuVQ_f+x_MH6t3iJW+1HKao|{0o0Lmbg@i&3W^L&CEI z)Lz1aMl&WX`i+RgDn0E=tv#6tcY2m^h=SGWlkhSJ?70)eb+6o!PUd#(AsUEg9>^bI zt6@(@a<`GwY^CAQh^+!!RW7TK_)K1Lh5O0E(7$(37;9l1d5%UKk1d>4zz?xt?b0>S zkMEDAk^@_NmOjo8b%aJ=pMQb5+RBU7evxkaJ5jf39gC5ez0sk?WQ;^ids1~{SE(lio1PgcU1^>*wTW~(APwE2 z1yot!nzeqlnZFk=Z3l<>(VaF|IE&f|WhRhDVjXN0v8$vJPU0NRFXcjEa;ICns>tfPZUUNx0VnE(E*eZmF<@n^0Qf!S6ul+YkpE-509I&}I7`^6ek}jIdz))uk$o z|JV1Db_ZVBd2Q8*+>KMWuyUmO`qcBdoxtqrp;|YW*V|&O5(qit8-Zcjh*BoPV*R*N zK(gnfqMr%1Hn8ndMnYd^zH~{^&D}DLzgo5j@iw-qwL#?XF}HcFOjZ5EML#~iThI)o zLk(vit-tFsF7NlQdtQC>)Y96z1WpV3pmXM713U4+pWUNn;$X^mY|;uRhmod-!O+Iq zH$Buq)x)yJ)l7LCh{*;)^v@|J5(=rt1sM}|BV)Al4NMi1-1>#1d>2PUp}q`&GA9(A zLl3lbcl`odjI*_cLorkBdU+G0pk3sT^r#eiJAVVTjzX&^qOU4CV+mWAQf9ZKZBfu? zvcK_d^-ULf#d2`?%UL#}^Lt#|SIP3eaFXPOHlexx_3rzoRhsp_2H_8~KW)5tP*`Rh zJ$5$S`M1q;*S!~*lI*+`&z7Aq0d)7*w0L3(laAy>rK*!tr{Cy94fpsqOI(Qy*e4=I zUOCoI0MtoX6oz&0rPEnUyjgad_LU%5IGmJpnRZ5V;d87qgOvnQ`XMXhrEYt*gz8%C zFkxA&9${0l5+NA@_g66ogT~@oAPmf*rr!E(>uVS~ll{<}Xztt4Czw21qoD7*qJ(5m zE+D|AwL_R&29)u~5ptRLYmeE1fNy@Nt6WxV0-#&asIjShwK~ux(4%LV5=Q*yYuk6O zDNMXyOWC+ScY%LS!NuUk|L0_Zl8yXB{-KijSWVHcUCGjDc5q}wwRbd-&!u!G-_5Ci z(J|k=#TkclhyA&HZF4oTq>5k7c9W25&{#b%Rvr3lE!pRbys+c`#_BOx-D!tAqh2ZmS$rtQ8E;?tLpOI|EVBVA5hdBVSKA8PB|vurlBg`C=L zV!ik{%<5OLb-SV3qk~_Acllv;#>_|eq6 zhx+Jw)`juivv(VWGp0V9>eh>ZHVqnpOhH!506TTNs0@I6WmQl(CfLmzF%@O>SX|lK zM)j%9;)YKOi0oY7C^SF%8&^wv?#=H+d7?N>%Q;7EOh$K4)80oD9A*bS2@^mEy!SoG zad|7t*DT5C`pU*{ajb!`TYosk+3f!m=c=!&WlJB%oxUcVXs6U4;C) zeQ<&#UITh20@@|r<|LBcSBHtrCa%U@o7MjO9P^R%>2A%`0-V8S)4X`G)T8@uO418) zQPPO<=}U689{I%{yHByN`sc38XVr&3-#SUw8Dl5TX?iwT_O+TeZ|W|647fy2nN!`~ zvB(Idhh?&+hjkGe+MM|4-3;cfomguhtW|GD_4|#8?Klv#xKrMYsTfyg|Gk=A;#bXL z7?5pXnYxaH_rIvB6vuB7J%X-z44{FG4qMx!x4*poYPGm(m+i6a$Sg?Pywn4SaN-f= z59F2i!R~e%me!lkVpHY6=CKmyZtYCCsfB;En^+M@@25fdm8+v)_7pfJoTn{3Kj4p} z?Jt{{)Rz&ek41Pm+%fHseKLIDXC3mo$k9cvW4`U@$_mlM`dU#{;;AS>pT6*fLMgd9 zdylBeR+yaQSfCtl$u4fetFvw-wVrM)3^c1lBuBZ*sT7}T8dGH>F%dR;I0B~b9E0%% zvw_9cY(+G0iRR*i+YM7ffBjyndNz1R;Ok!L<#jFS>V%p8wf?#nIaTH%7Rh%0wQr|( zE5@vAO1?k(O9Y$8{4aBo5Hv}bwR4EKW2 z@H;x9hy!o5s`h269%MQiv=dB-P3xFx2dPq_>9Kkr$=)#eLJ4nQMHFAJ(n zb1PSknC}BJw`T)8#~}pXDnmfUbl9;^e6reZ^`!N%-3r5<$I@b2&}>Vl^fXAx+KB~B zNODyFJOnzL^dPp#Y20Irb)L&@%TnxyCp#6cMS#eTR(&_BPn4E?i+q}$U0mSCo{Srvf3=?OIj^EoG5R*9b;&Q!`GLl=) zC@0E8`$G{1E@R;S`~=q5jxIQzC;OvHuI9l;>N?F0Xk0q|15B9YP+R%VgIjKqLrD-5R zOKZ0o=w!LFUE-)GXg?NtjD& zek1l|awh(5vUrF2Fc-w_U5$T9#Yl0(h>-REAVZe^dYx&tXz~(E$;zgT>dS%~i+%(S zz&XmCc1T`)Qyg>L6{lJ5qFsUTko&%{#6XY@=Vd5D>89RP5Qzv!*00|Cit$@Wl8?4) z3BUj8ZK-=)b83s>(*=0*BO@E;E6ryPbSe<05@DMW(dsU0lh}?FVO@E8!3YcdPDo9C z=1B%}tkw6m^zSoYRdaKM`!8%brG!-HvUH4{g%sOYUxxLuI_8MH@N%UaG?;}yu39=T ziVZP}9^Rh)GIiSNL%nxKuN2zr!f&Bg#D`K|k$@#4EVcf%W`8$C0ottOH(psHiH0L8 zgD$l-=7wZwK^a_?17MoQch!*xdT@#9ufjfY+ffnc!zgF;nxg@Ai4q&FC?LK1@2$D zigRV$WnCH{TbE?P_6zL%e2a_T?W!~n?;@JYuIGjRez*K$CoOug{0_RBwY zPW~|&I?ADduF5~PUq)J9JQ_;hJ%)NqgAZr7?0q?{t7#Ltyi1FqySz7G-Ws2#Suv6` z^0PU5VX>SF4zsqsOe(ZTBjt`G#C*D$MJz>3;5Mv&$?)%AM zZb`eN|Dq@;eN^ybN|RVsokRHhV61~8@+Lmq$O9&B>m^Zi$$F-wh6r8!g73cCfb=}w zd{wLVp#d8g{3dZ)Y9StM#j?79kWaH%-AWh0ZV?!X_5=`Bs5Halx=rV|K%SqgyOB89%` z8#4|ve=(D=DYJk|_zqkY1DRE((w!^Wy3+k#Qs4svGf$)bz>gOo^vL2|$@jKPyY?_S z8%>qT{;JGOyny%)$27u30zt>G3Wg^AbXEJVfVb4H^<6x75QlN=|3uyi^S)gaTf2Hj z8+wabEY3ZpD$bKv$;JK?%R?1gsQf8RJYq6i+$Pl^$N3rN$AlG>LwLqb=95I9dF|IP z01foF)$sGMZCP`keDOxJKqLdR>L+A!QRZ46vaEg`jKD?zT z1kJNiUgd%HY4<)rb-D*r02lm-8Jv4@JkWM&3xlJIE4j zeYbr@qK`>TzJiA4jRbL=y-Gb77^Bgp@tPgomM@6*Qm4b-QXH4zy)*s%;T8*T-g za!i^P5pTIzb9Ve3+db@qH9a4sguv%$U60n|mb}KI)$glL*INfV&U$^x;Yz7f1Ow+j z0CAd&=Nam!>*yrb{!%>8KOa$r%I~N?4}dugIm`gwK<2K_B)4&2Q58)S9iqt3j)~xg zn2f})OhS_1bTNUe_w^}@FQK<{zSMK0&ZsOf6V4VDbbnwn3Mfl?2H;C_7Qsn4)C?;H5zPo^1Nhd3c?Nj)wZgepgS@KaPOpszitjUxP9EAKrSxF`D4!ZTo{ zqBC<57q)*fYXfeZ<{0w@Sam@YTF*rARF2^V7*fX}%CU}b+|T9%%BJyp!Uf3?@*VGM zg}yrhPB)>6$Jp;6ioxjMQKFDA9HwU%<%B&2;~VW}U^a9ss`2|4_+{b8tAx-MZ7kB` zq!V8bGFKm`AF#P=9p%(i=OhQ1KBkRk#6RfC)6#m3ALFNTHHhI0}3qI3p1I&0qu#Fh3t z7cs)Vtm#>$)QoJe@>ltN`)vhnc9!?+vayrK^IONTlbitxdt9hB zT&p!iGsZ`%phMC@!gD){4p!#(O;+@`3wlG!D&;~0(kvi(_Nw;Wy=P0>G#C7!%Li5| ze`_dkuM1eEWZ1K~y8PM+z1aNssBCF=H=n9Qre!~Ig}=h@n{QRC-NL@DV?UGdyC8>m07p%4EDfdK+=?Kq$-yF15P-d-`_<4iQ zFy}eulpx6J>i6`-yiKc=<=o@=a7|yv1^bAEfHCZe84kP>Jt+}2pSQP`SuJr4L6`3a z6SCWGTOA9e(Du@XxhO36?RwfAXJBq05b{mW#OE6gP<#N=yJbrP^f2}UvzwT!LW|G|4JT{7>?CZ0Q9JtDC9996g&oi20hukrO#TV zki!IyqMszbHp^gPg?%Y9wA^9@IdLA{^aYG)x9VKf3S=ytQn5Fmbq)U>K zKp_3h-@`=cfAPbM4Xg~4i&#XR5&%|bV(#CK;aseWC_h=m-&~D7%5*`RE4^4B;pD zp1O+OtBJ!nFrqR$)Cn~=@M)@!nQ1nq46w{0S7haO<9J0r5ziz9wOrt8p~VN{{NUKS zjtawtOBD$JEp8`HbrI93y%2S1k2BgdM&WsqFvf6!!4DdEcS4n^D1O4~IUIyoXD9di zdRQbgqfLX57-I5bPaGHIJn`myyPE)h=b0b8ek9?~SAZxdzI#_{=nMq(1>Ok!@I~q` z=xaw9#yeyVi6P8*8?dKL+g>ryKAV(nF4HL`SD1&{(ZDj-@2yLn8=oBThli~sD`IVz zz#Xx(j)ah9`mL+lSpI@?B}BLCyO=jk(~*WjkI>6;4-0ny;l?BTwp@&$SiAhMo;xC8 z_tHvL=)t`^yGw{k#}RncD>ZQj@_r0Q`s2oKoBNqV%vgl`LUionC=upY#B|Oz2fQVP zUn%-6PAsU?faZq2v+@4n$xtMD=jZNiDE|;1;F$~w^9L(8d>X6E7l_5E)*zde<$#`0 zlOG%>4gzlD94$7=*|0u~52r_)x~5z2KVu^Ijy@+4egnPHIzxAJC?Ky=!!|N^WTeDOmo03<)TWm9qiFvGt1zV?F?#}u6eoECv0klAQZiUPnN|F18XfD+_PkT|eE z-TlVtg-Qf)71Pf_nVzq_9m_^+ioVzJoju{{HMYwXf1!KQ0fCv}=qA0zsmIQ69REhs z!~i???N%%s*Gm?L7#;!8rE^cH|DUnrk0%_1v0p~eU7=;8{+H5#-jcoq0w_GWe@Xkl z-}sCjSaF5++x5@SKbVh4cU2&Boets^C+Zu#s}*f*@4v{jZSbmVQ=ZPTzOBJPHf~r? zag6RVMGAeLnN*Y6z}1Ty{rEM4xr7P6T|b zwtOHF58J*X>K+S65Jw=$Nfw{iM=QW6NIWxq`vqo7uNefYj2&*_79-UiRP_q6WE#bV z1Ax(hsx5FRpN~xcXw|l2VE0DI_wjt;xu!YK^mRFI!|(BVPbnEZeuo75Ieymld$mrZ z0{$T_49TqgiIJ6pCpKa!8N;%5_+$O~`Js?#YCwJOb$QR-=#raaaRCWCSZZ;UguP+`(7OK~JY&>lbom@$1Z#s4i-x$Guq<^G>V3l3 zTn9Y9ouYn^I)jq<>Yye4?Fk^7pZy#XV4qmidFwkA=mX}&&P6pB0Ca3zQajgS1CDLbC1KSN%W7sDp_` z;`Lk=2e-Y`R3qdIsE!nIe}D#dqOefr%;@K%D)IA9{vmsBgwEcuXaIFEI-51$JDgHo z^---AIg&w?ZQ4X)={=q=c=N-nw&1_&IQSz=Y~@08%NX5dQKhR5*fd47YK&T$S94Cp+`k0{?nGvn zXRHn~3%|QWk%Mx}W5(PJ{foLM5n8dQ>QHx);^%o9sUlJiWG<2|xnPz}rP8v*v4i=Q zDjjfm@T|hoIj6{%#)rc*y|4o7SS<@$>bc(`ol@S35zhHgi5iw|4YnsnSY~8v>QXh4 znsulNVxuKgS~8dm4mdYp^B0mJ*sKhdfD$4%oy5!2bjU_1A5l=ET}_>;r9v6Co}>Ae z)GUiMP3r6x7ix*9ez-dfnL8vQu!=Z5I~VcOHDOdujL00-DP~7hVTkskN6MRhakzE6 z0D2pZ5W8xa)2gQ|nW3A^!?*su1G_thIJ|D?RTv2P-ISL+Wpyk7egGFs@t1&X8JMZO z1MYx2yOWCfgt>9ZhaQ5{AI09Ta>zFm>|E7fhZ2v%Oii}8;GlNfZKcyn(^|VkgaDn>$!nDwx{K9^`(!ImmZKEckyHo@7P16rRmL6){hl5G1 zU8(uW4T?6|o!e3s&FaQwXPTaw_FV>1$OBQyS7C;O<1!Y(5CeoHz~fQR0r*6U+X4X1 zMm1KV5o+oK)+)kLT!0D;z4kQCVk*_Hr$#x-6H}}Smrotu%4ZJs2$^z@%cZh#N)&`! z;Uq8~a(N?CE~UN05jrOFUI!3^l%RI$d0+09&zw~L{Ge1Gnr6E2X#tJWvthl56f>P- z?zi$DVpAou@>#3UUq@T*$=dz(oGK5Hu!+;NL(v4gG9Jon0B`d3-Bqd-eHdJA-(+8V zc&HY=TwK8_f~Db5FTtpn%2Z)wSA4|q9+56Xd5zyLe4gmb0Yv?sOE3!+mqUs8K7!3U z@qi6LA$e3F^3{W98oh9q{`}2{ijCqzy;zNaZ>MmWP`8dS$96Qccr0?jQR;^q)}I3B z{`sq2;}DQ*B;H^SF7jKdgxWDynrFGh57}vyY}3PYd_A&Cadd9smk!`*s2SXm%Z(~& zH1S)IVLe=(oi!CxcPJ&piY<$nhlZV0v34;cCR0k@a&Pbn9bpo!rv*JLM|G5$_Tulr zH{uMSzU19YfePYq71xSJtZ7M1e(luK) z+WBS6ZQ}B8(wuX3kFNB{sHs7q@)XkuP%haQ7cPC<*cRS!wrCF9&W_>vrk5 zJ8@5`2wZTazyS#Ow&0p1`+d0hPkYiwLzT}1CHm{edTzUmVfuD;K=UytT?ka2d`3VSi||!=#%_b>kA>|Anr@olI~fT1+DSH& z5SBmeM`GrMO$2a+-(jLy5^|&QcyGEJgXH}?Pl>RJGRi(*vj1G>OIV3kf(}TVP71_LfOZEZ<-y>j-p{9BojWec{w3;W3kr9wh>XUP2F?GC?KYJpz~-NSJV| z#*2fAY7H_O2*K|o7KRWbs>2OWyxU}8H*+R|>LG2Q^@~+Up#b>x1Vl|(qTGHcR2Ol< zELz?kI-D=ny0(RiJ)!T`7>-aHHA(1pj>|*UwNL*g1sLL_4GGp`Sb@iIyIHk#Xo@BtXs|oc|Rd+|c(sWy=l;OMHnqvGx>$)87DJ&*e@HJQLqRc{K?`;8x4osDQy2^&i+T5>oP{>YKfF?dRDY6iEtlz zM>1m4;PVpcL1XhZQRgFnO-591{arf>CAqIQ*p4@E`^OyeX?qpKZT;~Yd|KY|eyvt! z!Bgr9*HHNGf@)!dGer&Jd%_>)ZXN}_>a!@L_h~}8U#rbvO4+Z4u23`+n2AY}@|N!G zU9=6en&W64mx?>0EeuL&DM?cYid74{aa8+{Xx_t^y(A7&V1v}W)wF1=J(}VdML%99 ziSP#@Et7do4proL8#ejs5l|a;E9!0F^>oX;g8(oy{{`)d((yr)X<))Dt@$M-d zjpT@+MUbcG=oHY{AHT35_K%Hy{^wcM!UelOI?Rct#gKvr^imcV=aZM4RfJ__1P_?g zN3Ji#VN{Px?T>q19;P4YtoEWtv7xR@uobEys}sP+YGuo zF2j9!dWWaI(GoIA4?Im$jTtIFHKCQPW9SR_PqvXvlL9r2veF*hfy!5f=kj$u^t+|X zO%bszE|I zA&a?~$^jn)XS+7r1jo*D$^7C}1g2Fn1srCP#xob1uXqcZ&jlIT2t6oe#dmKzFZAd| z2G1pbfIyWpL3+y|*yL9?hGK-A#0S#Cn#ao0{!EyT;iqrj zEvh(e21AyS=yniB9H=(C$2>LV-Uxl)LF<0G3PcEtUqyh>m>6EU4ilb~Py|mGozt6R zbm_XdXZS8Qq2+$WWxaylVIH53K@8-MSd3g!F$%ZljzYP)j-39yHn9O&<#7~nG6$d2x ztzBwoiQT(|{rY=>oGDyiX9ha)t>Pc-AR9Kwpg{%y5?hqKI8+U-_$rmYnUQj^}U54V@f{;ZxJz zlw#4Scr(Qb{1Bv?Rt0=eI!TmYWRGvz!=yry|8HL<`KPBB{`<=#|M&<5`iCJbGko57vH-nQCU;S3J8s9d9jVb12DOt?z#AD{7c`(TWhe0~#-{$E zPkd0Nly!HZ61Gs@yVXF~`3wsU>roVeC8 zB4;g8yJeb5|8v^4z5S2G>DN)eChF28f#+rS3NXFh3D5E6PEavMg6^k6)CT0fi$`t@ zA*KmDYumydgP}PvffAN+hWNDg>`y7zPkE-GQmR9Lr&hlVHG}&qSr@-7>x>o$T@#TK-&m9dJa_1`Go@>qAd_^1wc=xnZUU&s^{7{ zhD6L$1%b}8R}vShNeZ2t>Ey?Oir0b^5Sb|J%$W)Dxu;wNjVCJ+g{8n#1q{qTnkx|A zNP}yZ)wQ`ol`=ew>A-&DVox0H>pUUXt#H_QNd};u{r}HuVtspXEUhyn;oer)7A%M8iJ({{l28K3V_( literal 18249 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 diff --git a/src/static/images/2025/capabilities/compression-streams.png b/src/static/images/2025/capabilities/compression-streams.png index ab697ae553cde0d094090a1d63ad11d477842a83..de5fc9cef7e2688e0fedb648afede04f56231f6e 100644 GIT binary patch literal 13989 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%0A%}Q(*OYva7{l7(8VPxD16WCzr)}E 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 h+B>m=79_?ok6!=) diff --git a/src/static/images/2025/capabilities/device-memory.png b/src/static/images/2025/capabilities/device-memory.png index 4b52a55d083b510e45d0a643e80b254aab65a50f..634742ef0a0076bb18467f87671ea50663c57e26 100644 GIT binary patch literal 12745 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 FzX8I)pWy%i literal 17731 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 literal 16844 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
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Built-in AI APIDesktopMobile
LanguageDetector0.28%0.26%
Prompt0.08%0.09%
Translator0.28%0.26%
Summarizer0.13%0.14%
+
{{ figure_link(caption="Built-in AI API usage", sheets_gid="843125108", sql_file="fugu.sql") }}
+
+ +Despite their availability, usage across the web remains very limited. As shown in the table below, each of these APIs appears on well under 1% of pages in both desktop and mobile datasets. LanguageDetector and Translator are the most commonly observed, each used by roughly 0.28% of desktop pages and 0.26% of mobile pages, while Prompt and Summarizer show even smaller footprints. + +The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chromium-only. Their inclusion in the 2025 dataset is nonetheless significant: it marks the first measurable presence of browser-native AI primitives in the HTTP Archive, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. ## Conclusion -The 2025 Capabilities analysis shows a web platform that continues to mature in both breadth and depth. Established APIs such as _Compression Streams_ and _Async Clipboard_ grew significantly or steadily, reflecting broader cross-engine support and developers replacing legacy patterns. Features like _Web Share_, _Media Session_, and _Add to Home Screen_ remained stable, with only minor year-over-year fluctuations. At the same time, specialist APIs such as _Media Capabilities_ saw notable uptake among media-heavy sites, suggesting deeper adoption in vertical use cases. +The 2025 Capabilities analysis shows a web platform that continues to mature in both breadth and depth. Established APIs such as Compression Streams and Async Clipboard grew significantly or steadily, reflecting broader cross-engine support and developers replacing legacy patterns. Features like Web Share, Media Session, and Add to Home Screen remained stable, with only minor year-over-year fluctuations. At the same time, specialist APIs such as Media Capabilities saw notable uptake among media-heavy sites, suggesting deeper adoption in vertical use cases. -Most compellingly, 2025 marks the first measurable footprint of **browser-native AI and language APIs** — including _LanguageDetector_, _Translator_, _Prompt_, and _Summarizer_ — even if each appears on well under 1% of pages. Their presence establishes a baseline for future adoption, hinting at a web platform increasingly ready to expose higher-level capabilities. +Most compellingly, 2025 marks the first measurable footprint of browser-native AI and language APIs—including LanguageDetector, Translator, Prompt, and Summarizer—even if each appears on well under 1% of pages. Their presence establishes a baseline for future adoption, hinting at a web platform increasingly ready to expose higher-level capabilities. Looking ahead, growth will likely be shaped by continued standardization and real-world utility: as browser support solidifies and developer tooling evolves, new APIs may move from experimental curiosity to practical building blocks for richer, smarter web applications. From e188021df63a1a383d97708f0b88eba4592405d3 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Mon, 19 Jan 2026 23:44:27 +0000 Subject: [PATCH 06/13] Featured stat edit --- src/content/en/2025/capabilities.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index a03b9fe181b..030695e01d6 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -17,7 +17,7 @@ featured_stat_label_1: Sites using the Compression Streams API. featured_stat_2: ~5% featured_stat_label_2: Sites using the Media Capabilities API. featured_stat_3: <1% -featured_stat_label_3: Sites use browser-native AI APIs such as LanguageDetector, Translator, Prompt, or Summarizer. +featured_stat_label_3: Sites using browser-native AI APIs. --- ## Introduction From c6d6db87b94af56dde5a7d78be4cfe3164cbaa40 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Mon, 19 Jan 2026 23:50:20 +0000 Subject: [PATCH 07/13] Fix linting --- src/content/en/2025/capabilities.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index 030695e01d6..8ed8fa59e43 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -32,7 +32,7 @@ In the age of AI, browsers cannot afford to be left behind—they must propose s This chapter, as in previous years, used the HTTP Archive's public dataset of millions of pages. These pages were archived as both desktop and mobile, since some sites serve different content based on what device is requesting the page. -### How does the HTTP Archive detect capabilities. +### How does the HTTP Archive detect capabilities? The HTTP Archive crawler parses the source code for all of these pages to determine which APIs were (potentially) used on the pages using regular expressions, such as `/navigator\.share\s*\(/g`. From 0e126ec2f3f751dce84d9beb9bf9d4f6656b6896 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Tue, 20 Jan 2026 07:57:47 +0000 Subject: [PATCH 08/13] Add DOI --- src/content/en/2025/capabilities.md | 1 + 1 file changed, 1 insertion(+) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index 8ed8fa59e43..b02d3348399 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -18,6 +18,7 @@ featured_stat_2: ~5% featured_stat_label_2: Sites using the Media Capabilities API. featured_stat_3: <1% featured_stat_label_3: Sites using browser-native AI APIs. +doi: 10.5281/zenodo.18246600 --- ## Introduction From 8072407215fab220d9c68e7340b9aa8341d80312 Mon Sep 17 00:00:00 2001 From: Alba Silvente Fuentes <36744484+Dawntraoz@users.noreply.github.com> Date: Tue, 20 Jan 2026 19:39:47 +0100 Subject: [PATCH 09/13] fix: feedback Barry on author bio Co-authored-by: Barry Pollard --- src/content/en/2025/capabilities.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index b02d3348399..81536f86dae 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -8,7 +8,7 @@ reviewers: [webmaxru] analysts: [guaca, christianliebel,tomayac] editors: [tunetheweb] translators: [] -Dawntraoz_bio: Alba Silvente is a Senior Frontend Engineer at Funda. She loves writing about FE development, Jamstack, and Web Performance on her blog, speaking at conferences, hosting tech podcasts, and working hard in the open-source community. She is also a GoogleDevExpert in Web Technologies, an Microsoft MVP and an ambassador at WTM. +Dawntraoz_bio: Alba Silvente is a Senior Frontend Engineer at Funda. She loves writing about front end development, Jamstack, and web performance on her blog, speaking at conferences, hosting tech podcasts, and working hard in the open-source community. She is also a Google Developer Expert in Web Technologies, an Microsoft MVP and an ambassador at Women Tech Makers. MichaelSolati_bio: Michael is a Developer Advocate at Amplication, focusing on helping developers build APIs and drink IPAs. Additionally, he is a Web GDE and has found his love in creating compelling experiences on the web and the voodoo ways of the web. results: https://docs.google.com/spreadsheets/d/1tBTCtkEw0QEOyebuHIettqGEKw1gtO2EB1jkwpRKb18 featured_quote: Capabilities on the web continue to mature, with established APIs seeing steady adoption while a new class of browser-native AI features begins to emerge. From d24c17e1c9f9598e6a5ad11fb9e4416522dab8c5 Mon Sep 17 00:00:00 2001 From: Alba Silvente Fuentes <36744484+Dawntraoz@users.noreply.github.com> Date: Tue, 20 Jan 2026 19:46:19 +0100 Subject: [PATCH 10/13] fix: apply suggestions from code review by Tomayac Co-authored-by: Thomas Steiner --- src/content/en/2025/capabilities.md | 34 ++++++++++++++--------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index 81536f86dae..d7219b2fbb8 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -4,7 +4,7 @@ title: Capabilities description: Capabilities chapter of the 2025 Web Almanac covering brand-new, powerful web platform APIs that give web apps access to hardware interfaces, enhance web-based productivity apps, built-in AI and more. hero_alt: Hero image of Web Almanac characters with superhero capes plugging various capabilities into a web page. authors: [Dawntraoz, MichaelSolati] -reviewers: [webmaxru] +reviewers: [webmaxru, tomayac] analysts: [guaca, christianliebel,tomayac] editors: [tunetheweb] translators: [] @@ -25,9 +25,9 @@ doi: 10.5281/zenodo.18246600 Today's web browsers offer a richer web experience than ever before. They are not limited to the basic capabilities of the browser itself; they also make use of lower-level features and the operating system on which they run. -These capabilities are made available via web platform APIs, including well-established ones such as [Clipboard](https://developer.mozilla.org/docs/Web/API/Clipboard_API), [File System](https://developer.mozilla.org/docs/Web/API/File_System_API) and [Service Worker](https://developer.mozilla.org/docs/Web/API/Service_Worker_API), as well as new ones in the experimental phase that will transform the creation of web pages. +These capabilities are made available via web platform APIs, including well-established ones such as [Clipboard](https://developer.mozilla.org/docs/Web/API/Clipboard_API), [File System](https://developer.mozilla.org/docs/Web/API/File_System_API) and [Service Worker](https://developer.mozilla.org/docs/Web/API/Service_Worker_API), as well as new ones in the experimental phase that have the potential to transform the creation of web apps. -In the age of AI, browsers cannot afford to be left behind—they must propose sustainable, accessible solutions for all, in order to democratize the use of AI. Consequently, we will see the initial use of these new Chrome-specific APIs in the Capabilities chapter this year. +In the age of AI, browsers cannot afford to be left behind—they must propose sustainable, accessible AI APIs for all, in order to democratize the use of AI. Consequently, we will discuss the initial use of these new Chrome- and Edge-specific APIs in the Capabilities chapter this year. ## Methodology @@ -37,15 +37,15 @@ This chapter, as in previous years, used the HTTP Archive's public dataset of mi The HTTP Archive crawler parses the source code for all of these pages to determine which APIs were (potentially) used on the pages using regular expressions, such as `/navigator\.share\s*\(/g`. -The way it works can cause some problems when it comes to detecting things: it may underreport some APIs used as it can't detect code that may exist due to minification, for example, when navigator was minified to `n;` or it may overreport occurrences of APIs because it doesn't run code to see if an API is actually used. +The way it works can cause some problems when it comes to detecting things: it may underreport some APIs used as it can't detect code that may exist due to minification, for example, when navigator was minified to `n`; or it may overreport occurrences of APIs because it doesn't run code to see if an API is actually used. Even with these limitations, as in other editions of this chapter, we should still be able to have a fairly good overview of what capabilities are used on the web nowadays. -Eighty-six total regular expressions for supported capabilities exist; view this source file to see all the expressions used. +Eighty-six total regular expressions for supported capabilities exist; view this source file based on the Fugu API data project to see all the expressions used. ### Project Fugu -Before we dive into the data, I would like to express my gratitude to Project Fugu, a cross-company initiative aimed at achieving feature parity between web and mobile/desktop applications. +Before we dive into the data, we would like to express our gratitude to Project Fugu, a cross-company initiative aimed at achieving feature parity between web and mobile/desktop applications. Thanks to this initiative, we can benefit from many features that belong to applications only by exposing platform-specific capabilities to the web. @@ -57,9 +57,9 @@ The following section highlights the seven most widely used web platform capabil ### Compression Streams API -The [Compression Streams API](https://developer.mozilla.org/docs/Web/API/Compression_Streams_API) allows web apps to compress and decompress data using widely supported formats like GZIP and Deflate, directly in the browser. This enables more efficient transfer and storage of large data without relying on server-side processing. +The [Compression Streams API](https://developer.mozilla.org/docs/Web/API/Compression_Streams_API) allows web apps to compress and decompress data using widely supported formats like GZIP and Deflate (and as of recent also Brotli), directly in the browser. This enables more efficient transfer and storage of large data without relying on server-side processing. -Data is processed via `CompressionStream` and `DecompressionStream` objects, which integrate with the web's streaming APIs (`ReadableStream`, `WritableStream`). +Data is processed via `CompressionStream` and `DecompressionStream` objects, which integrate with the web's [streaming APIs](https://web.dev/streams) (`ReadableStream`, `WritableStream`). ```js const text = "Hello Web Almanac 2025!"; @@ -71,7 +71,7 @@ const result = await new Response(decompressed).text(); console.log(result); // "Hello Web Almanac 2025!" ``` -Since May 2023, this feature works across the latest devices and browser versions. Available in Chromium-based browsers, Safari and Firefox, but might not work in older devices or browsers. +Since May 2023, this feature works across the latest devices and browser versions. It's available in Chromium-based browsers, Safari and Firefox, but might not work on older devices or other browsers. {{ figure_markup( image="compression-streams.png", @@ -83,7 +83,7 @@ Since May 2023, this feature works across the latest devices and browser version ) }} -Adoption of the Compression Streams API_ grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. +Adoption of the Compression Streams API grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. On mobile, usage jumped from 2.3% to 12.3%, and on desktop from 2.7% to 14.0%. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. @@ -105,7 +105,7 @@ const text = await navigator.clipboard.readText(); console.log(text); // "Hello from Web Almanac!" ``` -Supported in Chromium-based browsers and Safari. Firefox has partial support. +The Async Clibpoard API is supported in Chromium-based browsers and Safari. Firefox has partial support. {{ figure_markup( image="clipboard.png", @@ -146,7 +146,7 @@ if (navigator.canShare && navigator.canShare(data)) { } ``` -Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. +The Web Share API is supported in modern Chrome, Edge, and Safari. Firefox does not implement it (although it exists behind a flag). {{ figure_markup( image="web-share.png", @@ -160,7 +160,7 @@ Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. There have been minor adjustments to the usage of one of the most widely adopted APIs, which currently occupies third place in the ranking of most used APIs. -Adoption of the Web Share API remained largely stable, with mobile rising slightly from 6.0% in 2024 to 6.6% in 2025, and desktop from 6.2% to 6.7%. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. +Adoption of the Web Share API remained largely stable, with mobile rising slightly from 6.0% in 2024 to 6.6% in 2025, and desktop from 6.2% to 6.7%. Adoption was mostly flat, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. ### Device Memory API @@ -185,7 +185,7 @@ Available in Chromium-based browsers; not supported in Safari or Firefox. ) }} -The Device Memory API saw a noticeable uptick, moving from 5.0% to 6.3% on mobile and 4.9% to 6.2% on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. +The Device Memory API saw a noticeable uptick, moving from 5.0% to 6.3% on mobile and 4.9% to 6.2% on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. Another possible explanation could be that developers try to determine if AI inference can reasonably run on a device based on the available memory before downloading an AI model. More developers are leveraging `navigator.deviceMemory` to deliver lighter experiences on low-memory devices. While adoption is still limited by its Chromium-only availability and its intentionally coarse-grained values, the growth shows that sites concerned with performance are starting to make practical use of it. @@ -282,7 +282,7 @@ One of the most notable changes in the Capabilities chapter for 2025 is the firs ### Built-in AI APIs -As of 2025, only a subset of these APIs is available outside of experimental contexts: _LanguageDetector_, _Translator_, _Summarizer_, and _Prompt_. Other built-in AI capabilities—such as _Writer_, _Rewriter_, and _Proofreader_—remain experimental, requiring additional setup and operating under temporary or limited token-based constraints. This distinction is important when interpreting usage data, as experimental features are less likely to appear in production websites. +As of 2025, only a subset of these APIs is available outside of experimental contexts: _LanguageDetector_, _Translator_, _Summarizer_, and _Prompt_ (limited to extensions). Other built-in AI capabilities—such as the regular _Prompt_ API, _Writer_, _Rewriter_, and _Proofreader_—remain experimental, requiring additional setup and operating under temporary or limited token-based constraints. This distinction is important when interpreting usage data, as experimental features are less likely to appear in production websites.
@@ -320,9 +320,9 @@ As of 2025, only a subset of these APIs is available outside of experimental con
{{ figure_link(caption="Built-in AI API usage", sheets_gid="843125108", sql_file="fugu.sql") }}
-Despite their availability, usage across the web remains very limited. As shown in the table below, each of these APIs appears on well under 1% of pages in both desktop and mobile datasets. LanguageDetector and Translator are the most commonly observed, each used by roughly 0.28% of desktop pages and 0.26% of mobile pages, while Prompt and Summarizer show even smaller footprints. +Despite their availability, usage across the web remains very limited. As shown in the table below, each of these APIs appears on well under 1% of pages in both desktop and mobile datasets, however, actual support is currently limited to most desktop platforms (Windows, macOS, Linux, and ChromeOS on Chromebook Plus devices). Language Detector and Translator are the most commonly observed, each used by roughly 0.28% of desktop pages and 0.26% of mobile pages, while Prompt and Summarizer show even smaller footprints. -The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chromium-only. Their inclusion in the 2025 dataset is nonetheless significant: it marks the first measurable presence of browser-native AI primitives in the HTTP Archive, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. +The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chrome and Edge. Their inclusion in the 2025 dataset is nonetheless significant: it marks the first measurable presence of browser-native AI primitives in the HTTP Archive, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. ## Conclusion From d6723120d8b35a49f9e311113fd265bdba07ea1a Mon Sep 17 00:00:00 2001 From: Dawntraoz Date: Tue, 20 Jan 2026 20:29:00 +0100 Subject: [PATCH 11/13] fix: add clarification and corrections to Barry and Tomayac feedback --- src/content/en/2025/capabilities.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index d7219b2fbb8..1e3638d6781 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -3,13 +3,12 @@ title: Capabilities description: Capabilities chapter of the 2025 Web Almanac covering brand-new, powerful web platform APIs that give web apps access to hardware interfaces, enhance web-based productivity apps, built-in AI and more. hero_alt: Hero image of Web Almanac characters with superhero capes plugging various capabilities into a web page. -authors: [Dawntraoz, MichaelSolati] +authors: [Dawntraoz] reviewers: [webmaxru, tomayac] -analysts: [guaca, christianliebel,tomayac] +analysts: [guaca, tomayac] editors: [tunetheweb] translators: [] Dawntraoz_bio: Alba Silvente is a Senior Frontend Engineer at Funda. She loves writing about front end development, Jamstack, and web performance on her blog, speaking at conferences, hosting tech podcasts, and working hard in the open-source community. She is also a Google Developer Expert in Web Technologies, an Microsoft MVP and an ambassador at Women Tech Makers. -MichaelSolati_bio: Michael is a Developer Advocate at Amplication, focusing on helping developers build APIs and drink IPAs. Additionally, he is a Web GDE and has found his love in creating compelling experiences on the web and the voodoo ways of the web. results: https://docs.google.com/spreadsheets/d/1tBTCtkEw0QEOyebuHIettqGEKw1gtO2EB1jkwpRKb18 featured_quote: Capabilities on the web continue to mature, with established APIs seeing steady adoption while a new class of browser-native AI features begins to emerge. featured_stat_1: ~13% @@ -105,7 +104,7 @@ const text = await navigator.clipboard.readText(); console.log(text); // "Hello from Web Almanac!" ``` -The Async Clibpoard API is supported in Chromium-based browsers and Safari. Firefox has partial support. +The Async Clibpoard API is supported in Chromium-based browsers, Safari and Firefox. Only Chromium-based browsers have support for richer clipboard data, like web custom formats. {{ figure_markup( image="clipboard.png", @@ -223,9 +222,9 @@ The Media Session API experienced a small decline. Mobile adoption dropped from ### Add to Home Screen -This capability allows users to install a Progressive Web App (PWA) on their device's home screen. +This capability allows users to [install a Progressive Web App (PWA) as an app-like experience on their device](https://developer.chrome.com/blog/how_chrome_helps_users_install_the_apps_they_value). -This is triggered when the browser fires the `beforeinstallprompt` event, typically after the PWA meets installability criteria (manifest, HTTPS, service worker). +When a site meets installability criteria, Chrome and other browsers may show an install badge (for example, an icon in the address bar or an “Install” menu option) that lets users add the app to their home screen or install it as a standalone app, while it also supports manual installation flows for sites that don’t meet those criteria. Chrome further experiments with ML-driven install prompts on Android to help users discover installable experiences. {{ figure_markup( image="add-to-home-screen.png", @@ -237,7 +236,7 @@ This is triggered when the browser fires the `beforeinstallprompt` event, typica ) }} -Adoption of Add to Home Screen capabilities remained flat, with mobile usage decreasing slightly from 4.8% in 2024 to 4.6% in 2025, and desktop from 5.1% to 4.9%. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. +Adoption of Add to Home Screen capabilities remained flat, with mobile usage decreasing slightly from 4.8% in 2024 to 4.6% in 2025, and desktop from 5.1% to 4.9%. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. ### Media Capabilities API @@ -284,7 +283,6 @@ One of the most notable changes in the Capabilities chapter for 2025 is the firs As of 2025, only a subset of these APIs is available outside of experimental contexts: _LanguageDetector_, _Translator_, _Summarizer_, and _Prompt_ (limited to extensions). Other built-in AI capabilities—such as the regular _Prompt_ API, _Writer_, _Rewriter_, and _Proofreader_—remain experimental, requiring additional setup and operating under temporary or limited token-based constraints. This distinction is important when interpreting usage data, as experimental features are less likely to appear in production websites. -
From 3e64308ccef42e4420f883deaf08c2955f9d662a Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Wed, 21 Jan 2026 01:10:06 +0000 Subject: [PATCH 12/13] Add back link to Capabilities chapter --- src/content/en/2025/pwa.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/content/en/2025/pwa.md b/src/content/en/2025/pwa.md index 3a9f92c0937..5bed2651bb9 100644 --- a/src/content/en/2025/pwa.md +++ b/src/content/en/2025/pwa.md @@ -365,6 +365,8 @@ These are the top 10 used advanced capabilities in PWAs for 2025.
{{ figure_link(caption="Top 10 used advanced capabilities in PWAs.", sheets_gid="220067822", sql_file="fugu.sql") }}
+There is a separate chapter dedicated to [Capabilities](./capabilities.md) to dive deeper in the adoption that these sort of APIs have had in 2025. + ## Notifications and PWAs Notifications make sense for apps as they allow the user to re-engage with the application. This is a controversial capability as there is considerable bad UX and dark patterns to try to get users to accept them. The data shows that in both desktop and mobile, the most common action a user takes is to ignore these requests. From b1cc8f5d1eb359e52bcb8c2545729f77bfb1d011 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Wed, 21 Jan 2026 01:12:57 +0000 Subject: [PATCH 13/13] Add link to Gen AI chapter --- src/content/en/2025/capabilities.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index 1e3638d6781..b43f7acaa07 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -322,6 +322,8 @@ Despite their availability, usage across the web remains very limited. As shown The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chrome and Edge. Their inclusion in the 2025 dataset is nonetheless significant: it marks the first measurable presence of browser-native AI primitives in the HTTP Archive, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. +See also the [Generative AI](./generative-ai) chapter for more discussion on these APIs and AI on the web. + ## Conclusion The 2025 Capabilities analysis shows a web platform that continues to mature in both breadth and depth. Established APIs such as Compression Streams and Async Clipboard grew significantly or steadily, reflecting broader cross-engine support and developers replacing legacy patterns. Features like Web Share, Media Session, and Add to Home Screen remained stable, with only minor year-over-year fluctuations. At the same time, specialist APIs such as Media Capabilities saw notable uptake among media-heavy sites, suggesting deeper adoption in vertical use cases.

9G%3>D6T=9a!k-d$7iW-KsIr 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 Ml(ip}DZ&u{2h!jJLI3~& literal 17574 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 G;Qs(|%!=#) From 535a6194fa0f517af703ca1f36d3537e01910660 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Wed, 14 Jan 2026 09:05:58 +0000 Subject: [PATCH 03/13] Add TODOs --- src/content/en/2025/capabilities.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index a2d2c6bc442..b357fdbc415 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -288,6 +288,12 @@ The Media Capabilities API saw dramatic growth over the past year. Mobile adopti ## New features over the past year +{# TODO: Add #} + ### Built-in AI APIs +{# TODO: Add #} + ## Conclusion + +{# TODO: Add #} From c7164224757fdbd1f29d4c3ae9feaa58c41b8d0c Mon Sep 17 00:00:00 2001 From: Dawntraoz Date: Mon, 19 Jan 2026 22:00:32 +0100 Subject: [PATCH 04/13] feat: add the rest of the content and metadata --- src/content/en/2025/capabilities.md | 101 ++++++++++++++-------------- 1 file changed, 50 insertions(+), 51 deletions(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index b357fdbc415..4063a35cbe6 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -1,23 +1,23 @@ --- #See https://github.com/HTTPArchive/almanac.httparchive.org/wiki/Authors'-Guide#metadata-to-add-at-the-top-of-your-chapters title: Capabilities -description: Capabilities chapter of the 20202522 Web Almanac covering brand-new, powerful web platform APIs that give web apps access to hardware interfaces, enhance web-based productivity apps, and more. +description: Capabilities chapter of the 2025 Web Almanac covering brand-new, powerful web platform APIs that give web apps access to hardware interfaces, enhance web-based productivity apps, built-in AI and more. hero_alt: Hero image of Web Almanac characters with superhero capes plugging various capabilities into a web page. authors: [Dawntraoz, MichaelSolati] reviewers: [webmaxru] analysts: [guaca, christianliebel] editors: [tunetheweb] translators: [] -Dawntraoz_bio: TODO +Dawntraoz_bio: Alba Silvente is a Senior Frontend Engineer at Funda. She loves writing about FE development, Jamstack, and Web Performance on her blog, speaking at conferences, hosting tech podcasts, and working hard in the open-source community. She is also a GoogleDevExpert in Web Technologies, an Microsoft MVP and an ambassador at WTM. MichaelSolati_bio: Michael is a Developer Advocate at Amplication, focusing on helping developers build APIs and drink IPAs. Additionally, he is a Web GDE and has found his love in creating compelling experiences on the web and the voodoo ways of the web. results: https://docs.google.com/spreadsheets/d/1tBTCtkEw0QEOyebuHIettqGEKw1gtO2EB1jkwpRKb18 -featured_quote: TODO -featured_stat_1: TODO -featured_stat_label_1: TODO -featured_stat_2: TODO -featured_stat_label_2: TODO -featured_stat_3: TODO -featured_stat_label_3: TODO +featured_quote: Capabilities on the web continue to mature, with established APIs seeing steady adoption while a new class of browser-native AI features begins to emerge. +featured_stat_1: ~13% +featured_stat_label_1: Sites on mobile and desktop use the _Compression Streams API_. +featured_stat_2: ~5% +featured_stat_label_2: Sites on mobile and desktop use the _Media Capabilities API_. +featured_stat_3: <1% +featured_stat_label_3: Sites use browser-native AI APIs such as _LanguageDetector_, _Translator_, _Prompt_, or _Summarizer_. --- ## Introduction @@ -30,13 +30,17 @@ In the age of AI, browsers cannot afford to be left behind — they must propose ## Methodology -This chapter used the HTTP Archive's public dataset of millions of pages. These pages were archived as if they were visited on both desktop and mobile, as some sites will serve different content based on what device is requesting the page. +This chapter, as the previous ones, used the HTTP Archive’s public dataset of millions of pages. These pages were archived as both desktop and mobile, since some sites serve different content based on what device is requesting the page. -The HTTP Archive's crawler then parsed the source code for all of these pages to determine which APIs were (potentially) used on the pages. For instance, regular expressions, such as `/navigator\.share\s*\(/g`, test pages to see if in the concrete case the Web Share API is found in its source code. +### How does the HTTP Archive work? -This method does have two significant issues. First, it may under-report some APIs used as it can not detect obfuscated code that may exist due to minification, for example, when navigator was minified to n. Additionally, it may over-report occurrences of APIs because it does not execute code to see if an API is actually used. Regardless of these limitations, this methodology should provide a sufficiently good overview of what capabilities are used on the web. +Its crawler parses the source code for all of these pages to determine which APIs were (potentially) used on the pages using regular expressions, such as `/navigator\.share\s*\(/g`. -Seventy-five total regular expressions for supported capabilities exist; view this source file to see all the expressions used. +The way it works can cause some problems when it comes to detecting things: it may underreport some APIs used as it can't detect code that may exist due to minification, for example, when navigator was minified to n; or it may overreport occurrences of APIs because it doesn't run code to see if an API is actually used. + +Even with these limitations, as in other editions of this chapter, we should still be able to have a fairly good overview of what capabilities are used on the web nowadays. + +Eighty-six total regular expressions for supported capabilities exist; view this source file to see all the expressions used. ### Project Fugu @@ -48,7 +52,7 @@ If you would like to know which APIs are exposed in this context, please visit t ## Top 7 most used features -{# TODO: Add intro #} +The following section highlights the **seven most widely used web platform capabilities** observed in the 2025 dataset. These features represent a mix of long-established APIs and more recent additions that have reached broad, practical adoption. Their prevalence across both mobile and desktop pages reflects where the web platform is most commonly relied upon today, and provides a useful baseline for understanding which capabilities have become foundational building blocks for modern web applications. ### Compression Streams API @@ -70,7 +74,7 @@ Since May 2023, this feature works across the latest devices and browser version {{ figure_markup( image="compression-streams.png", - caption="Compression Streams API usage.", + caption="Compression Streams API usage 2024-2025.", description="Bar chart showing a surge in Compression Streams API usage across both mobile and desktop platforms between 2024 and 2025. On mobile devices, usage skyrocketed from a mere 2.3% in 2024 to 12.3% in 2025, representing a more than fivefold increase. Desktop adoption followed an even steeper trajectory, jumping from 2.7% to 14.0% over the same one-year period.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=951480556&format=interactive", sheets_gid="1897009688", @@ -78,11 +82,9 @@ Since May 2023, this feature works across the latest devices and browser version ) }} -Usage comparison of the Compression Streams API from 2024 and 2025 on desktop and mobile. +Adoption of the _Compression Streams API_ grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. -Adoption of the Compression Streams API grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. - -On mobile, usage jumped from 2.34% to 12.33%, and on desktop from 2.69% to 13.97%. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. +On mobile, usage jumped from **2.34%** to **12.33%**, and on desktop from **2.69%** to **13.97%**. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. The API is particularly appealing for data-heavy applications where streaming efficiency matters, which explains its strong adoption curve. @@ -94,7 +96,6 @@ The [Clipboard API](https://developer.mozilla.org/docs/Web/API/Clipboard_API) pr ```js // Write text - await navigator.clipboard.writeText("Hello from Web Almanac!"); // Read text @@ -107,7 +108,7 @@ Supported in Chromium-based browsers and Safari. Firefox has partial support. {{ figure_markup( image="clipboard.png", - caption="Clipboard API usage.", + caption="Clipboard API usage 2024-2025.", description="Bar chart showing the growth in Clipboard API usage across mobile and desktop platforms between 2024 and 2025. On mobile devices, the percentage of pages using the API rose from 10.0% to 11.2%, while desktop usage saw a similar increase from 10.4% to 11.8%. Overall, the data shows a consistent upward trend in adoption for both platforms, with desktop maintaining a slightly higher overall usage rate than mobile in both years.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=714385047&format=interactive", sheets_gid="1966659557", @@ -115,9 +116,7 @@ Supported in Chromium-based browsers and Safari. Firefox has partial support. ) }} -Usage comparison of the Clipboard API from 2024 and 2025 on desktop and mobile. - -The Clipboard API continues to see steady growth. Mobile adoption increased from 10.00% in 2024 to 11.19% in 2025, while desktop rose from 10.42% to 11.75%. This reflects developers increasingly moving away from legacy `execCommand()` clipboard hacks and embracing the async API for copy buttons and paste workflows. The year-over-year growth is moderate, underscoring that the Clipboard API is now a well-established utility rather than an emerging capability. +The _Clipboard API_ continues to see steady growth. Mobile adoption increased from **10.00%** in 2024 to **11.19%** in 2025, while desktop rose from **10.42%** to **11.75%**. This reflects developers increasingly moving away from legacy `execCommand()` clipboard hacks and embracing the async API for copy buttons and paste workflows. The year-over-year growth is moderate, underscoring that the Clipboard API is now a well-established utility rather than an emerging capability. ### Web Share API @@ -150,7 +149,7 @@ Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. {{ figure_markup( image="web-share.png", - caption="Web Share API usage.", + caption="Web Share API usage 2024-2025.", description="Bar chart showing a modest increase in Web Share API usage across both mobile and desktop platforms from 2024 to 2025. Mobile usage grew from 6.0% to 6.6%, while desktop usage saw a similar marginal rise from 6.2% to 6.7%.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1903144577&format=interactive", sheets_gid="930326182", @@ -158,11 +157,9 @@ Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. ) }} -Usage comparison of the Web Share API from 2024 and 2025 on desktop and mobile. - There have been minor adjustments to the usage of one of the most widely adopted APIs, which currently occupies third place in the ranking of most used APIs. -Adoption of the Web Share API remained largely stable, with mobile rising slightly from 5.97% in 2024 to 6.55% in 2025, and desktop from 6.15% to 6.68%. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. +Adoption of the _Web Share API_ remained largely stable, with mobile rising slightly from **5.97%** in 2024 to **6.55%** in 2025, and desktop from **6.15%** to **6.68%**. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. ### Device Memory API @@ -179,7 +176,7 @@ Available in Chromium-based browsers; not supported in Safari or Firefox. {{ figure_markup( image="device-memory.png", - caption="Device Memory API usage.", + caption="Device Memory API usage 2024-2025.", description="Bar chart showing a growth in Device Memory API usage for both mobile and desktop platforms. Mobile usage increased from 5.0% in 2024 to 6.3% in 2025, while desktop usage grew from 4.9% to 6.2%.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=799153560&format=interactive", sheets_gid="1811570014", @@ -187,9 +184,7 @@ Available in Chromium-based browsers; not supported in Safari or Firefox. ) }} -Usage comparison of the Device Memory API from 2024 and 2025 on desktop and mobile. - -The Device Memory API saw a noticeable uptick, moving from 5.05% to 6.27% on mobile and 4.88% to 6.21% on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. +The _Device Memory API_ saw a noticeable uptick, moving from **5.05%** to **6.27%** on mobile and **4.88%** to **6.21%** on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. More developers are leveraging `navigator.deviceMemory` to deliver lighter experiences on low-memory devices. While adoption is still limited by its Chromium-only availability and its intentionally coarse-grained values, the growth shows that sites concerned with performance are starting to make practical use of it. @@ -215,7 +210,7 @@ Widely supported in Chromium-based browsers and Safari. Firefox has no support f {{ figure_markup( image="media-session.png", - caption="Media Session API usage.", + caption="Media Session API usage 2024-2025.", description="This bar chart shows the usage of the Media Session API, which uniquely shows a slight downward trend across both platforms. Mobile usage decreased from 4.9% in 2024 to 4.7% in 2025, while desktop adoption also dipped from 5.5% to 5.3%.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1577112625&format=interactive", sheets_gid="1863050303", @@ -223,9 +218,7 @@ Widely supported in Chromium-based browsers and Safari. Firefox has no support f ) }} -Usage comparison of the Media Session API from 2024 and 2025 on desktop and mobile. - -The Media Session API experienced a small decline. Mobile adoption dropped from 4.91% in 2024 to 4.65% in 2025, while desktop fell slightly from 5.46% to 5.29%. These differences are minor and likely reflect natural fluctuations in the dataset rather than meaningful shifts. Overall, usage remains steady, concentrated in audio and video sites like music players and podcast apps where integration with platform-level media controls improves user experience. +The _Media Session API_ experienced a small decline. Mobile adoption dropped from **4.91%** in 2024 to **4.65%** in 2025, while desktop fell slightly from **5.46%** to **5.29%**. These differences are minor and likely reflect natural fluctuations in the dataset rather than meaningful shifts. Overall, usage remains steady, concentrated in audio and video sites like music players and podcast apps where integration with platform-level media controls improves user experience. ### Add to Home Screen @@ -235,7 +228,7 @@ This is triggered when the browser fires the `beforeinstallprompt` event, typica {{ figure_markup( image="add-to-home-screen.png", - caption="Add to Home Screen usage.", + caption="Add to Home Screen usage 2024-2025.", description="Bar chart showing a slight decline in Add to Home Screen usage across both mobile and desktop platforms. Mobile usage decreased from 4.8% in 2024 to 4.6% in 2025, while desktop adoption also saw a minor drop from 5.1% to 4.9%.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=398812036&format=interactive", sheets_gid="1084353718", @@ -243,9 +236,7 @@ This is triggered when the browser fires the `beforeinstallprompt` event, typica ) }} -Usage comparison of the Add to Home Screen from 2024 and 2025 on desktop and mobile. - -Adoption of Add to Home Screen capabilities remained flat, with mobile usage decreasing slightly from 4.78% in 2024 to 4.59% in 2025, and desktop from 5.12% to 4.92%. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. +Adoption of _Add to Home Screen_ capabilities remained flat, with mobile usage decreasing slightly from **4.78%** in 2024 to **4.59%** in 2025, and desktop from **5.12%** to **4.92%**. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. ### Media Capabilities API @@ -257,10 +248,10 @@ It provides insights into smoothness and power efficiency for adaptive media str const config = { type: "file", audio: { - contentType: "audio/mp3", - channels: 2, - bitrate: 132700, - samplerate: 5200, + contentType: "audio/mp3", + channels: 2, + bitrate: 132700, + samplerate: 5200, }, }; @@ -274,7 +265,7 @@ Widely available, it works across many devices and browser versions. It's been a {{ figure_markup( image="media-capabilities.png", - caption="Media Capabilities API usage.", + caption="Media Capabilities API usage 2024-2025.", description="Bar chart showing a surge in Media Capabilities API usage. Mobile adoption skyrocketed from a negligible 0.6% to 4.4%, while desktop usage saw an even larger jump from 0.8% to 5.0%.", chart_url="https://docs.google.com/spreadsheets/d/e/2PACX-1vSyxDgchtyy-8NISa8hPX62lA46w-X3JlkaMmorTpOZ6viZsy4Q0-b8UNmwt5b5-SBcWCrlSl_6uOIe/pubchart?oid=1359620848&format=interactive", sheets_gid="1154224831", @@ -282,18 +273,26 @@ Widely available, it works across many devices and browser versions. It's been a ) }} -Usage comparison of the Media Capabilities API from 2024 and 2025 on desktop and mobile. - -The Media Capabilities API saw dramatic growth over the past year. Mobile adoption rose from just 0.61% in 2024 to 4.37% in 2025, while desktop usage jumped from 0.75% to 5.00%. This surge suggests rapid adoption by streaming platforms, which use `decodingInfo()` to determine codec support, playback smoothness, and power efficiency before selecting the best stream for a device. Unlike many of the other APIs that saw only incremental shifts, Media Capabilities is clearly on a fast adoption trajectory driven by media-heavy sites. +The _Media Capabilities API_ saw dramatic growth over the past year. Mobile adoption rose from just **0.61%** in 2024 to **4.37%** in 2025, while desktop usage jumped from **0.75%** to **5.00%**. This surge suggests rapid adoption by streaming platforms, which use `decodingInfo()` to determine codec support, playback smoothness, and power efficiency before selecting the best stream for a device. Unlike many of the other APIs that saw only incremental shifts, Media Capabilities is clearly on a fast adoption trajectory driven by media-heavy sites. ## New features over the past year -{# TODO: Add #} +One of the most notable changes in the Capabilities chapter for 2025 is the first appearance of [browser-native AI and language APIs](https://developer.chrome.com/docs/ai/built-in-apis). While AI has been widely used on the web through external services and libraries for years, these APIs represent a shift toward **built-in, standardized language capabilities provided directly by the browser**. ### Built-in AI APIs -{# TODO: Add #} +As of 2025, only a subset of these APIs is available outside of experimental contexts: _LanguageDetector_, _Translator_, _Summarizer_, and _Prompt_. Other built-in AI capabilities—such as _Writer_, _Rewriter_, and _Proofreader_—remain experimental, requiring additional setup and operating under temporary or limited token-based constraints. This distinction is important when interpreting usage data, as experimental features are less likely to appear in production websites. + +Despite their availability, usage across the web remains very limited. As shown in the table below, each of these APIs appears on **well under 1% of pages** in both desktop and mobile datasets. _LanguageDetector_ and _Translator_ are the most commonly observed, each used by roughly **0.28% of desktop pages and 0.26% of mobile pages**, while _Prompt_ and _Summarizer_ show even smaller footprints. + +{# TODO: Add table #} + +The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chromium-only. Their inclusion in the 2025 dataset is nonetheless significant: it marks the **first measurable presence of browser-native AI primitives in the HTTP Archive**, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. ## Conclusion -{# TODO: Add #} +The 2025 Capabilities analysis shows a web platform that continues to mature in both breadth and depth. Established APIs such as _Compression Streams_ and _Async Clipboard_ grew significantly or steadily, reflecting broader cross-engine support and developers replacing legacy patterns. Features like _Web Share_, _Media Session_, and _Add to Home Screen_ remained stable, with only minor year-over-year fluctuations. At the same time, specialist APIs such as _Media Capabilities_ saw notable uptake among media-heavy sites, suggesting deeper adoption in vertical use cases. + +Most compellingly, 2025 marks the first measurable footprint of **browser-native AI and language APIs** — including _LanguageDetector_, _Translator_, _Prompt_, and _Summarizer_ — even if each appears on well under 1% of pages. Their presence establishes a baseline for future adoption, hinting at a web platform increasingly ready to expose higher-level capabilities. + +Looking ahead, growth will likely be shaped by continued standardization and real-world utility: as browser support solidifies and developer tooling evolves, new APIs may move from experimental curiosity to practical building blocks for richer, smarter web applications. From 34afb8966a2f97948a704dc9aa0d906f1aeae9b0 Mon Sep 17 00:00:00 2001 From: Barry Pollard Date: Mon, 19 Jan 2026 23:39:41 +0000 Subject: [PATCH 05/13] Edits --- src/content/en/2025/capabilities.md | 90 ++++++++++++++++++++--------- 1 file changed, 62 insertions(+), 28 deletions(-) diff --git a/src/content/en/2025/capabilities.md b/src/content/en/2025/capabilities.md index 4063a35cbe6..a03b9fe181b 100644 --- a/src/content/en/2025/capabilities.md +++ b/src/content/en/2025/capabilities.md @@ -5,7 +5,7 @@ description: Capabilities chapter of the 2025 Web Almanac covering brand-new, po hero_alt: Hero image of Web Almanac characters with superhero capes plugging various capabilities into a web page. authors: [Dawntraoz, MichaelSolati] reviewers: [webmaxru] -analysts: [guaca, christianliebel] +analysts: [guaca, christianliebel,tomayac] editors: [tunetheweb] translators: [] Dawntraoz_bio: Alba Silvente is a Senior Frontend Engineer at Funda. She loves writing about FE development, Jamstack, and Web Performance on her blog, speaking at conferences, hosting tech podcasts, and working hard in the open-source community. She is also a GoogleDevExpert in Web Technologies, an Microsoft MVP and an ambassador at WTM. @@ -13,11 +13,11 @@ MichaelSolati_bio: Michael is a Developer Advocate at Amplication, focusing on h results: https://docs.google.com/spreadsheets/d/1tBTCtkEw0QEOyebuHIettqGEKw1gtO2EB1jkwpRKb18 featured_quote: Capabilities on the web continue to mature, with established APIs seeing steady adoption while a new class of browser-native AI features begins to emerge. featured_stat_1: ~13% -featured_stat_label_1: Sites on mobile and desktop use the _Compression Streams API_. +featured_stat_label_1: Sites using the Compression Streams API. featured_stat_2: ~5% -featured_stat_label_2: Sites on mobile and desktop use the _Media Capabilities API_. +featured_stat_label_2: Sites using the Media Capabilities API. featured_stat_3: <1% -featured_stat_label_3: Sites use browser-native AI APIs such as _LanguageDetector_, _Translator_, _Prompt_, or _Summarizer_. +featured_stat_label_3: Sites use browser-native AI APIs such as LanguageDetector, Translator, Prompt, or Summarizer. --- ## Introduction @@ -26,17 +26,17 @@ Today's web browsers offer a richer web experience than ever before. They are no These capabilities are made available via web platform APIs, including well-established ones such as [Clipboard](https://developer.mozilla.org/docs/Web/API/Clipboard_API), [File System](https://developer.mozilla.org/docs/Web/API/File_System_API) and [Service Worker](https://developer.mozilla.org/docs/Web/API/Service_Worker_API), as well as new ones in the experimental phase that will transform the creation of web pages. -In the age of AI, browsers cannot afford to be left behind — they must propose sustainable, accessible solutions for all, in order to democratize the use of AI. Consequently, we will see the initial use of these new Chrome-specific APIs in the 'Capabilities 2025' chapter this year. +In the age of AI, browsers cannot afford to be left behind—they must propose sustainable, accessible solutions for all, in order to democratize the use of AI. Consequently, we will see the initial use of these new Chrome-specific APIs in the Capabilities chapter this year. ## Methodology -This chapter, as the previous ones, used the HTTP Archive’s public dataset of millions of pages. These pages were archived as both desktop and mobile, since some sites serve different content based on what device is requesting the page. +This chapter, as in previous years, used the HTTP Archive's public dataset of millions of pages. These pages were archived as both desktop and mobile, since some sites serve different content based on what device is requesting the page. -### How does the HTTP Archive work? +### How does the HTTP Archive detect capabilities. -Its crawler parses the source code for all of these pages to determine which APIs were (potentially) used on the pages using regular expressions, such as `/navigator\.share\s*\(/g`. +The HTTP Archive crawler parses the source code for all of these pages to determine which APIs were (potentially) used on the pages using regular expressions, such as `/navigator\.share\s*\(/g`. -The way it works can cause some problems when it comes to detecting things: it may underreport some APIs used as it can't detect code that may exist due to minification, for example, when navigator was minified to n; or it may overreport occurrences of APIs because it doesn't run code to see if an API is actually used. +The way it works can cause some problems when it comes to detecting things: it may underreport some APIs used as it can't detect code that may exist due to minification, for example, when navigator was minified to `n;` or it may overreport occurrences of APIs because it doesn't run code to see if an API is actually used. Even with these limitations, as in other editions of this chapter, we should still be able to have a fairly good overview of what capabilities are used on the web nowadays. @@ -52,7 +52,7 @@ If you would like to know which APIs are exposed in this context, please visit t ## Top 7 most used features -The following section highlights the **seven most widely used web platform capabilities** observed in the 2025 dataset. These features represent a mix of long-established APIs and more recent additions that have reached broad, practical adoption. Their prevalence across both mobile and desktop pages reflects where the web platform is most commonly relied upon today, and provides a useful baseline for understanding which capabilities have become foundational building blocks for modern web applications. +The following section highlights the seven most widely used web platform capabilities observed in the 2025 dataset. These features represent a mix of long-established APIs and more recent additions that have reached broad, practical adoption. Their prevalence across both mobile and desktop pages reflects where the web platform is most commonly relied upon today, and provides a useful baseline for understanding which capabilities have become foundational building blocks for modern web applications. ### Compression Streams API @@ -82,9 +82,9 @@ Since May 2023, this feature works across the latest devices and browser version ) }} -Adoption of the _Compression Streams API_ grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. +Adoption of the Compression Streams API_ grew sharply between 2024 and 2025, becoming the most widely used API in 2025 and overtaking Clipboard, which had been in the lead for three years. -On mobile, usage jumped from **2.34%** to **12.33%**, and on desktop from **2.69%** to **13.97%**. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. +On mobile, usage jumped from 2.3% to 12.3%, and on desktop from 2.7% to 14.0%. This steep rise aligns with the API becoming [widely supported across all major engines](https://web.dev/blog/compressionstreams) in the last two years, removing a technical blocker and letting developers drop JavaScript polyfills and rely on native gzip/deflate compression. The API is particularly appealing for data-heavy applications where streaming efficiency matters, which explains its strong adoption curve. @@ -116,11 +116,11 @@ Supported in Chromium-based browsers and Safari. Firefox has partial support. ) }} -The _Clipboard API_ continues to see steady growth. Mobile adoption increased from **10.00%** in 2024 to **11.19%** in 2025, while desktop rose from **10.42%** to **11.75%**. This reflects developers increasingly moving away from legacy `execCommand()` clipboard hacks and embracing the async API for copy buttons and paste workflows. The year-over-year growth is moderate, underscoring that the Clipboard API is now a well-established utility rather than an emerging capability. +The Clipboard API continues to see steady growth. Mobile adoption increased from 10.0% in 2024 to 11.2% in 2025, while desktop rose from 10.4% to 11.8%. This reflects developers increasingly moving away from legacy `execCommand()` clipboard hacks and embracing the async API for copy buttons and paste workflows. The year-over-year growth is moderate, underscoring that the Clipboard API is now a well-established utility rather than an emerging capability. ### Web Share API -The [Web Share API](https://developer.mozilla.org/docs/Web/API/Web_Share_API) allows web apps to invoke the device's native sharing mechanism, enabling users to share text, URLs, and files with other installed apps (e.g., messaging, email, or social apps). +The [Web Share API](https://developer.mozilla.org/docs/Web/API/Web_Share_API) allows web apps to invoke the device's native sharing mechanism, enabling users to share text, URLs, and files with other installed apps (for example, messaging, email, or social apps). The main method is `navigator.share()`, which takes an object with the data to share. The optional `navigator.canShare()` method can be used to check whether the provided data (especially files) is shareable before attempting. @@ -159,11 +159,11 @@ Supported in modern Chrome, Edge, and Safari. Firefox does not implement it. There have been minor adjustments to the usage of one of the most widely adopted APIs, which currently occupies third place in the ranking of most used APIs. -Adoption of the _Web Share API_ remained largely stable, with mobile rising slightly from **5.97%** in 2024 to **6.55%** in 2025, and desktop from **6.15%** to **6.68%**. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. +Adoption of the Web Share API remained largely stable, with mobile rising slightly from 6.0% in 2024 to 6.6% in 2025, and desktop from 6.2% to 6.7%. Flat adoption, but with a slight uptick. This API has now reached a state of maturity and stability across major browsers; these incremental gains are indicative of natural fluctuations rather than significant growth. ### Device Memory API -The [Device Memory API](https://developer.mozilla.org/docs/Web/API/Device_Memory_API) exposes an approximation of the device's RAM, in gigabytes, through `navigator.deviceMemory`. This enables developers to tailor experiences (e.g., serving lighter pages to low-memory devices). +The [Device Memory API](https://developer.mozilla.org/docs/Web/API/Device_Memory_API) exposes an approximation of the device's RAM, in gigabytes, through `navigator.deviceMemory`. This enables developers to tailor experiences (for example, serving lighter pages to low-memory devices). The value is rounded and coarse-grained for privacy reasons. @@ -184,13 +184,13 @@ Available in Chromium-based browsers; not supported in Safari or Firefox. ) }} -The _Device Memory API_ saw a noticeable uptick, moving from **5.05%** to **6.27%** on mobile and **4.88%** to **6.21%** on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. +The Device Memory API saw a noticeable uptick, moving from 5.0% to 6.3% on mobile and 4.9% to 6.2% on desktop. This increase reflects broader recognition of the API's usefulness for adaptive performance strategies, where developers can serve lighter assets to low-memory devices. More developers are leveraging `navigator.deviceMemory` to deliver lighter experiences on low-memory devices. While adoption is still limited by its Chromium-only availability and its intentionally coarse-grained values, the growth shows that sites concerned with performance are starting to make practical use of it. ### Media Session API -The [Media Session API](https://developer.mozilla.org/docs/Web/API/Media_Session_API) lets developers customize media notifications and integrate with platform-level media controls (e.g., lock screen, headset buttons, or smart displays). +The [Media Session API](https://developer.mozilla.org/docs/Web/API/Media_Session_API) lets developers customize media notifications and integrate with platform-level media controls (for example, lock screen, headset buttons, or smart displays). Using `navigator.mediaSession`, apps can define metadata and actions for media playback. @@ -218,7 +218,7 @@ Widely supported in Chromium-based browsers and Safari. Firefox has no support f ) }} -The _Media Session API_ experienced a small decline. Mobile adoption dropped from **4.91%** in 2024 to **4.65%** in 2025, while desktop fell slightly from **5.46%** to **5.29%**. These differences are minor and likely reflect natural fluctuations in the dataset rather than meaningful shifts. Overall, usage remains steady, concentrated in audio and video sites like music players and podcast apps where integration with platform-level media controls improves user experience. +The Media Session API experienced a small decline. Mobile adoption dropped from 4.9% in 2024 to 4.7% in 2025, while desktop fell slightly from 5.5% to 5.3%. These differences are minor and likely reflect natural fluctuations in the dataset rather than meaningful shifts. Overall, usage remains steady, concentrated in audio and video sites like music players and podcast apps where integration with platform-level media controls improves user experience. ### Add to Home Screen @@ -236,7 +236,7 @@ This is triggered when the browser fires the `beforeinstallprompt` event, typica ) }} -Adoption of _Add to Home Screen_ capabilities remained flat, with mobile usage decreasing slightly from **4.78%** in 2024 to **4.59%** in 2025, and desktop from **5.12%** to **4.92%**. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. +Adoption of Add to Home Screen capabilities remained flat, with mobile usage decreasing slightly from 4.8% in 2024 to 4.6% in 2025, and desktop from 5.1% to 4.9%. These small declines likely reflect normal variation rather than a real downward trend. Growth is constrained by platform fragmentation: Android and Chromium-based browsers expose install prompts, while iOS lacks `beforeinstallprompt` and relies on a manual Safari-driven install flow. This limits widespread uptake despite PWA adoption. ### Media Capabilities API @@ -273,26 +273,60 @@ Widely available, it works across many devices and browser versions. It's been a ) }} -The _Media Capabilities API_ saw dramatic growth over the past year. Mobile adoption rose from just **0.61%** in 2024 to **4.37%** in 2025, while desktop usage jumped from **0.75%** to **5.00%**. This surge suggests rapid adoption by streaming platforms, which use `decodingInfo()` to determine codec support, playback smoothness, and power efficiency before selecting the best stream for a device. Unlike many of the other APIs that saw only incremental shifts, Media Capabilities is clearly on a fast adoption trajectory driven by media-heavy sites. +The Media Capabilities API saw dramatic growth over the past year. Mobile adoption rose from just 0.61% in 2024 to 4.37% in 2025, while desktop usage jumped from 0.75% to 5.00%. This surge suggests rapid adoption by streaming platforms, which use `decodingInfo()` to determine codec support, playback smoothness, and power efficiency before selecting the best stream for a device. Unlike many of the other APIs that saw only incremental shifts, Media Capabilities is clearly on a fast adoption trajectory driven by media-heavy sites. ## New features over the past year -One of the most notable changes in the Capabilities chapter for 2025 is the first appearance of [browser-native AI and language APIs](https://developer.chrome.com/docs/ai/built-in-apis). While AI has been widely used on the web through external services and libraries for years, these APIs represent a shift toward **built-in, standardized language capabilities provided directly by the browser**. +One of the most notable changes in the Capabilities chapter for 2025 is the first appearance of [browser-native AI and language APIs](https://developer.chrome.com/docs/ai/built-in-apis). While AI has been widely used on the web through external services and libraries for years, these APIs represent a shift toward built-in, standardized language capabilities provided directly by the browser. ### Built-in AI APIs As of 2025, only a subset of these APIs is available outside of experimental contexts: _LanguageDetector_, _Translator_, _Summarizer_, and _Prompt_. Other built-in AI capabilities—such as _Writer_, _Rewriter_, and _Proofreader_—remain experimental, requiring additional setup and operating under temporary or limited token-based constraints. This distinction is important when interpreting usage data, as experimental features are less likely to appear in production websites. -Despite their availability, usage across the web remains very limited. As shown in the table below, each of these APIs appears on **well under 1% of pages** in both desktop and mobile datasets. _LanguageDetector_ and _Translator_ are the most commonly observed, each used by roughly **0.28% of desktop pages and 0.26% of mobile pages**, while _Prompt_ and _Summarizer_ show even smaller footprints. -{# TODO: Add table #} - -The low adoption rates are expected. These APIs are new, often still evolving, and currently supported by a limited set of browsers, Chromium-only. Their inclusion in the 2025 dataset is nonetheless significant: it marks the **first measurable presence of browser-native AI primitives in the HTTP Archive**, establishing a baseline for tracking how built-in AI capabilities evolve on the web in future years. +