Last September, we announced our plan to remove NPAPI support from Chrome by the end of 2014. This change will improve Chrome’s security, speed, and stability as well as reduce complexity in the code base. Over the last few quarters, we’ve been encouraged to see an overall 12.9% drop in per-user instantiations of NPAPI plug-ins and declining usage of the most popular NPAPI plug-ins:

Deprecation has proceeded as scheduled. As of September 23rd, 2013, the Chrome Web Store no longer accepts NPAPI-based Apps and Extensions. Webpage-instantiated NPAPI plug-ins have been blocked by default since January 2014 using the infobar UI. NPAPI support was removed from Linux in Chrome 35.

To further prepare users and developers for complete removal, we’ll be making two more updates in the coming weeks. Starting today, the Chrome Web Store will no longer show NPAPI-based Apps and Extension on the home page, search results, and category pages. In Chrome 37, webpage-instantiated NPAPI plug-ins will be blocked using the harder-to-bypass page-action blocking UI.

Most use cases that previously required NPAPI are now supported by JavaScript-based open web technologies. For the few applications that need low-level APIs, threads, and machine-optimized code, Native Client offers the ability to run sandboxed native code in Chrome. To help ease the transition from NPAPI, NaCl recently exposed two new Pepper APIs for media playback and processing. The MediaStreams API enables low latency multimedia playback, and the Hardware Decode API enables efficient video decoding.

Today’s Chrome Beta channel release includes several new developer features to help you make richer, more compelling web content and apps, especially for mobile devices. Unless otherwise noted, changes described below apply to Chrome for Android, Windows, Mac, Linux, and Chrome OS.

element.animate()

The forthcoming Web Animations JavaScript API lets you animate web content from script. The element.animate() function included in today’s Beta is the first part of the API to ship in Chrome: it makes it possible to create simple CSS Animations using JavaScript. This means that animations can be dynamically generated without paying a CSS style recalculation cost. Animations created in this way are also cancelable and provide guaranteed end events (in contrast, CSS Transitions only generate events if they cause a style change). Here's an example of how you'd use it:

An HTML Import can contain CSS, JavaScript, HTML, or anything else an .html file can include. This means they provide a convention for bundling related HTML/CSS/JS (even other HTML Imports) into a single package, making them a fantastic tool for delivering Web Components to users.Data-binding with Object.observe()

Chrome no longer sends touchcancel on touch scroll, improving compatibility with other browsers and making it possible to add touch UI effects like pull-to-refresh without re-implementing scrolling and fling physics in JavaScript.

Some CSS properties such as scrollTop and offsetHeight will now return fractional values in browser-zoom situations.

The new WOFF 2.0 Web Font compression format offers a 30% average gain over WOFF 1.0 (up to 50%+ in some cases).