Web Components the Right Way

This is a guide intended to introduce to Web Components. Everyone can contribute here!

Web Components the Right Way was made with love by Mateus Ortiz

Specifications

Blogs

Reading

Getting Started

  • Using Polymer to Create Web Components To bridge the gap and give developers access to this rich functionality now, Google has created the Polymer library which serves as a set of polyfills to bring the promise of Web Components to you today.
  • Custom Elements defining new elements in HTML
  • Exploring HTML Imports Web Components have come a long way in the past few months. HTML Imports allow you to load additional documents into your page without having to write a bunch of ajax. This is great for Custom Elements where you might want to import a suite of new tags.

Interoperability

Generators

  • Generator Elements A Yeoman Generator that provides a functional boilerplate to easily create Custom Elements using Polymer, X-Tag or VanillaJS.
  • Generator Polymer Yeoman generator for scaffolding Polymer apps
  • Geneator X-Tag X-Tag generator for Yeoman
  • Generator Bosonic Yeoman Generator Bosonic
  • Slush Element A Slush Generator that provides a functional boilerplate to easily create Custom Elements using Polymer, X-Tag or VanillaJS.

Tests

Discover

Best Practices

Style Guides

  • Google Web Components Style Guide This guide serves as an extension to the Google JavaScript Style Guide with additional style guidance around authoring Web Components, particuarly those in this element collection. It is targeted at Google engineers, but may be useful for others too.

Performance

Libraries

  • Polymer Polymer is a new type of library for the web, built on top of Web Components, and designed to leverage the evolving web platform on modern browsers.
  • X-Tag X-Tag is a small JavaScript library, created and supported by Mozilla, that brings Web Components Custom Element capabilities to all modern browsers.
  • Bosonic Bosonic is a set of tools that enable you to build Web Components as the spec currently describes, and supporting not-so-modern browsers like IE9.
  • Polymer Dart Polymer.dart is a Dart port of Polymer. Build Web Components with Dart, and interoperate with Web Components built with JavaScript.
  • Skate Skate is a web component library that is focused on being a tiny, performant, syntactic-sugar for binding behaviour to custom and existing elements without ever having to worry about when your element is inserted into the DOM.

Screencasts

Support

  • Are We Componentized Yet? Tracking the progress of Web Components through standardisation, polyfillification, and implementation.

Concatenate

  • Vulcanize Concatenate a set of Web Components into one file

Boilerplates

Who To Follow

Eric Bidelman Addy Osmani Rob Dodson Web Components Polymer
Eric Bidelman Addy Osmani Rob Dodson Web Components Polymer
Alex Komoroske Pascal Zeno Rocha Daniel Buchner Angelina Fabbro
Alex Komoroske Pascal Precht Zeno Rocha Daniel Buchner Angelina Fabbro

Eduardo | Pascal Hartig | Sindre Sorhus | Christian --- | --- | --- | --- | --- Eduardo lundgren | Pascal Hartig | Sindre Sorhus | Christian Heilmann