
How Do the Google Web Projects Angular, Polymer and NG-Material) All Fit Together? - georgeedwards
It seems like Google is doing a lot to assist front-end web development. Looking at AngularJS 2.0, Polymer 1.0 and Material Design (Angular Material), they all seem to do slightly different stuff, but with overlap. Are they designed to all work together? Polymer doesn&#x27;t seem to cover all Angular Material features. Polymer seems top have some routing but not a patch on AngularJS. etc. If I was building a web app for Google (in-house pretend), maybe a google docs clone etc. which of these tools would I use to do which bits?
======
T-A
My 10 000 foot view:

\+ Polymer is a polyfill for the Web Components "standard" \+ a bunch of
commonly needed components ready for use;

\+ Angular 2 is designed to use Web Components "natively", without any need to
wrap them up in Angular-specific code;

\+ Material Design is just a look. You can style Web Components any way you
want.

Disclaimer: I don't use any of the above. :D

~~~
pax_americana
Polymer is not a polyfill for the standards. It's just a library for creating
web components in a less boilerplatey manner. The polyfill library is called
webcomponents.js.

~~~
T-A
If you wish to be precise, webcomponents.js was broken out of Polymer a while
back. See e.g. [1]. In practice, if you use Polymer you are still using the
polyfill + the elements from the catalog, as exemplified on [2].

[1]
[https://github.com/Polymer/HTMLImports](https://github.com/Polymer/HTMLImports)

[2] [https://www.polymer-project.org/1.0/](https://www.polymer-
project.org/1.0/)

~~~
spankalee
You don't need the polyfills on Chrome.

~~~
T-A
Sure, but as long as browser coverage looks like this,

[http://caniuse.com/#search=components](http://caniuse.com/#search=components)

you have to include the polyfills anyway, unless you are targeting something
like Electron or an intranet where everybody is guaranteed to be using Chrome.

That's why I put "standard" in quotes; although it's been around for years,
it's really only supported by one widely used browser.

