Home Start Get started Build an element 1. Get set up 2. Add local DOM 3. Data binding & properties 4. React to input 5. Theming with custom properties Build an app 1. Get set up 2. Create a new page 3. Add some elements 4. Deploy Polymer Feature overview Quick tour Define elements Register an element Declare properties Instance methods Behaviors Local DOM & styling Local DOM Styling Events Handle and fire events Gesture events Data system Data system concepts Work with object and array data Observers and computed properties Data binding Helper elements Tools Tools overview Polymer CLI Document your elements Test your elements Optimize for production Publish an element Advanced tools Services What's new Release notes 1.0 Migration guide About Polymer 1.0 Resources Community Browser compatibility API Reference Polymer.Base array-selector custom-style dom-bind dom-if dom-repeat dom-template Polymer.Templatizer Global settings App Toolbox What's in the box? Using the Toolbox App templates Responsive app layout Routing Localization App storage Service worker Serve your app Case study Shop News Blog Community Home Start Get started Quick tour of Polymer Install Polymer 2.x Build an element 1. Get set up 2. Add local DOM 3. Data binding & properties 4. React to input 5. Theming with custom properties Build an app 1. Get set up 2. Create a new page 3. Add some elements 4. Deploy Polymer Feature overview About this release What's new in 2.0 Upgrade guide Hybrid elements Release notes Custom elements Custom element concepts Define an element Declare properties Shadow DOM & styling Shadow DOM concepts DOM templating Style shadow DOM Custom CSS properties Events Handle and fire events Gesture events Data system Data system concepts Work with object and array data Observers and computed properties Data binding Helper elements Browser support Overview Polyfills ES6 Tools Tools overview Polymer CLI CLI commands Create an element project Create an application project Document your elements Test your elements Web services polymer.json specification Node support Resources Glossary API Reference API Reference Global settings App Toolbox What's in the box? Using the Toolbox App templates Responsive app layout Routing Localization App storage Service worker Deploy Build for production Serve your app The PRPL pattern Case study Shop News Blog Community

Polymer 2.0 has landed. Our freshest cut of the Polymer CLI is ready for download, our Docs include all the latest 2.0 guidance and upgrade tips, and our Elements have been ported to Hybrid mode to be used in both 1.0- and 2.0-based applications.

We've also made sure to bring all of our most popular resources along with us. We've upgraded our News and Shop demos - Progressive Web Apps built with Polymer and showcasing our best-practices - to use 2.0 App Toolbox elements, our Start tutorials now teach developers how to build 2.0 elements and applications, and our Starter Kit will now generates a 2.0-based PWA template.

Polymer Release 2.0.0

Built on the fundamental goals of using native web platform features, improving interoperability, and providing a smooth migration path, the Polymer 2.0 library is a great support system for developing web components.

One of the most exciting features of Polymer 2.0 is support for ES6 class-based syntax, so web components built with Polymer look essentially native. Web Component support in the platform has advanced quite a bit in the last year, with Safari shipping native implementations of both Shadow DOM and Custom Elements v1. As the platform advances, our polyfills shrink. The new polyfills are also modular, so you can send each browser only the polyfills it needs

The advancements within the platform and modularity of our polyfills and mixins are what contribute to our incredibly lightweight core at just 11k. All of those things together help make elements built with Polymer 2.0 much more interoperable, so they'll "just work" in many popular JS frameworks.

Polymer CLI

The Polymer CLI, the multi-tool of web component development, has also had a major version advancement, launching version 1.0.0 today.

The Polymer CLI has been outfitted with the brand new Polymer Analyzer - a static analyzer for the web - which scans your entire project and understands its structure. Based on your code the analyzer knows what components you define and use, so the CLI can give you useful diagnostics, compile your entire application from ES6 to ES5 for older browsers, intelligently optimize and bundle your app for lightning-fast loading, and more, all with minimal configuration.

Version 1.0 of the CLI adds templates and starter kits for Polymer 2.0 and a new linter that understands the new syntax and features of Custom Elements v1 and Polymer 2.0.

Elements

In sync with the library and tooling releases, our catalog of elements is now available in hybrid mode, which means they work in both 1.0 and 2.0 based applications! If your application is built fully with off-the-shelf Polymer elements, upgrading to 2.0 is as simple as changing the dependencies in your bower.json file.

Beyond upgrading our catalog, we've even added some brand new app-media elements due to popular demand. The app-media elements are built using the latest web media APIs and enable you to capture and process video, photo, and audio content client-side, making building media-rich PWA experiences much simpler.

With the 2.0 library advancements, lots of convenient ES6 features are now available to you. You can make new components that inherit from our elements and use plain ES6 class-based syntax instead of the Polymer factory method.

Stay tuned for I/O

All of this news comes at a very exciting time—I/O is in just 2 days! We'll have 3 talks deep-diving on various areas of the Polymer Project. We will give an overview of all of the Polymer Project's latest and greatest advancements, including some new announcements at our Polymer Keynote on Day 1. Justin Fagnani-Bell, Tech Lead on the Tools team will speak about developer tooling for web components, and Monica Dinculescu will be sharing tips, tricks, and best practices for building web components with Polymer 2.0.

We're also working on a fresh fleet of codelabs, a large presence at the I/O Web Sandbox, and an even more exciting Polymon-related surprise. We're looking forward to sharing it all with you either over the livestream or in person. Please come by or shoot us a tweet to share your thoughts and say hello!

What's new in 2.0 Upgrade to 2.0