Skip to content

Why Web Components?

Dimitri Glazkov edited this page Apr 17, 2015 · 7 revisions

The objective of Web Components is to alleviate the Composition Problem, which is a part of the larger Multiple-Actor Problem.

Desired results:

  • fewer breakages when changing out middleware or UI parts of the web app, or when adding third-party components
  • thriving, open ecosystem of mix-and-match components from various vendors

Idea: let's make it easier to build components that are truly reusable across frameworks.

Problem: it is impossible to make all frameworks, future and past, arrive at and agree on a common contract.

Proposed Solution: Since every framework (aside from canvas/rendering ones) relies on DOM, in order to be reusable, your components should be indistinguishable from HTML/DOM elements.

Core Primitives

  • Custom Elements: a component is an HTML element.
  • Shadow DOM: hide implementation details of an element (nee component) in the same way the HTML elements hide theirs.

How Success Looks Like

Polymer and Angular 2 at ng-conf Keynote Polymer and Angular 2 at ng-conf Keynote

The complementarity of React and Web Components The complementarity of React and Web Components

Interaction Design with Ember 2.0 and Polymer INTERACTION DESIGN WITH EMBER 2.0 AND POLYMER

Clone this wiki locally