When comparing Polymer vs Deku, the Slant community recommends Polymer for most people. In the question“What are the best JavaScript libraries for building a UI?” Polymer is ranked 4th while Deku is ranked 9th. The most important reason people chose Polymer is:
It provides a base component.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Various basic components
It provides a base component.
Pro HTML markup is not string
HTML markup as it can be a non-string.
Pro Flex layout components
It provides Flex layout components.
Pro CSS is easy to apply
CSS can be applied far more comfortably than React.
Pro No need for special debugging tools
The presence od specialized debugging tools are advertised by competitors. The all features of web components are natively supported by browser embedded development tools.
Pro Excellent routing
The router is embedded into CLI for project creation and covers as web as Progressive web app, also fused with Polymer layouts out of the box. The shop template for CLI has a complete solution including the routing.
Pro Complete web app stack support
Full app stack from data tier to routing, progressive web app, responsive layouts makes no need to seek outside of Polymer ecosystem for application features.
In addition to waste set of mature web components in Polymer Elements along with Vaadin Elements there are thousands of web components in the wild comparable to jQuery plugins set.
Pro Excellent documentation
Polymer guides you as with tools (cli, build environment, app templates,..) as with complimentary documentation on all phases of app development from creation of app as progresive web app to production deployment instructions.
As Polymer is standards based, the whole community around those standards also helping in documentation and support.
Pro Based on web components
Web Components are a collection of specifications released by W3C as a way to reduce the complexity of web apps by creating reusable components. Browser support is currently poor for web components, however Polymer is developed to make web components compatible with modern browsers.
Pro API is easy to understand, based on standard
The Polymer APIs are split on application layers and follow standards on all possible ways: Web Components, CSS variables, async API via Promises and so on.
Pro Functional
Functional approach.
Pro Server side rendering
Deku can render it's components and data server side, then it sends those components as HTML to the browser.
This ensures faster initial loading time and SEO friendliness out of the box, since it's indexed as any other static website by search engines.
Pro Easy to learn
Since Deku is very lightweight and has a rather small API, there's not much to learn. It's pretty easy to get started and build something with it.
Pro Can use JSX
Developers using Deku can choose to also use JSX if they want to. This is especially helpful for people who are moving from React to Deku.
Pro Good performance
Deku's diffing algorithm is considerably faster and performs better than most libraries. The dbmonster performance mini-app written in Deku renders roughly 16% faster than other libraries.
Cons
Con No server-side rendering
Polymer does not support server-side rendering. This results in higher loading times, more HTTP requests and it's not very SEO friendly, since search engines have no way of indexing a page if it's not rendered in the server.
Con No support for legacy browsers
Deku does not support legacy browsers, or relatively old browsers for that matter. They only support the latest versions of the major web browsers.
Con Not a lot of learning resources
Since it's a rather new library and has a small community, there are not many examples where you can learn from out there. There are also few guides and the documentation is not amazing and has some parts that should be covered better.