Submit Search
Upload
Codemotion Rome 2016 - Polymer
•
0 likes
•
279 views
Maurizio Mangione
Follow
Report
Share
Report
Share
1 of 56
Download now
Download to read offline
Recommended
WebGL Awesomeness
WebGL Awesomeness
Stephan Seidt
Introduction to AngularJS
Introduction to AngularJS
Jumping Bean
Advanced custom fields in Wordpress
Advanced custom fields in Wordpress
Exove
The JAMStack (Javascript, APIs, Markup).
The JAMStack (Javascript, APIs, Markup).
Michael Brooks
HTML5
HTML5
Anees Pathoor
Starters with Django
Starters with Django
BeDjango
A Pocketful of Pro-tips
A Pocketful of Pro-tips
Tammy Valgardson
Razor into the Razor'verse
Razor into the Razor'verse
Ed Charbeneau
Recommended
WebGL Awesomeness
WebGL Awesomeness
Stephan Seidt
Introduction to AngularJS
Introduction to AngularJS
Jumping Bean
Advanced custom fields in Wordpress
Advanced custom fields in Wordpress
Exove
The JAMStack (Javascript, APIs, Markup).
The JAMStack (Javascript, APIs, Markup).
Michael Brooks
HTML5
HTML5
Anees Pathoor
Starters with Django
Starters with Django
BeDjango
A Pocketful of Pro-tips
A Pocketful of Pro-tips
Tammy Valgardson
Razor into the Razor'verse
Razor into the Razor'verse
Ed Charbeneau
Yeoman intro
Yeoman intro
Gergely Németh
Polymer - Una bella historia de amor
Polymer - Una bella historia de amor
Israel Blancas
WooCommerce: Customization FAQ
WooCommerce: Customization FAQ
Rodolfo Melogli
Blogging for hackers (english)
Blogging for hackers (english)
Stephen Mariano Cabrera
De 0 a Polymer
De 0 a Polymer
Israel Blancas
GoCoding.Today For Rails - Episode1
GoCoding.Today For Rails - Episode1
Brian Hu
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
TJ Stalcup
Polymer - El fin a tus problemas con el FrontEnd
Polymer - El fin a tus problemas con el FrontEnd
Israel Blancas
Introduction to Django CMS
Introduction to Django CMS
Pim Van Heuven
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
TJ Stalcup
DevDay 2018 - Blazor
DevDay 2018 - Blazor
Denis Voituron
Web Development with Vim by Johannes Raggam
Web Development with Vim by Johannes Raggam
T. Kim Nguyen
Kentico Cloud Best Practices
Kentico Cloud Best Practices
Kentico Software
Frontend Crash Course
Frontend Crash Course
Aaron Lamphere
Wade.Go Introduction Speech - SFD HCMC 2014
Wade.Go Introduction Speech - SFD HCMC 2014
Nguyễn Thành Hải
JSConf.eu Overview
JSConf.eu Overview
Raimonds Simanovskis
From website to mobile app - a journey
From website to mobile app - a journey
Martin Naumann
Word press plugin development
Word press plugin development
Md Shahjahan Jewel
Magento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASS
Bartek Igielski
Thinkful DC FrontEnd Crash Course - HTML & CSS
Thinkful DC FrontEnd Crash Course - HTML & CSS
TJ Stalcup
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
Horacio Gonzalez
Polymer
Polymer
jskvara
More Related Content
What's hot
Yeoman intro
Yeoman intro
Gergely Németh
Polymer - Una bella historia de amor
Polymer - Una bella historia de amor
Israel Blancas
WooCommerce: Customization FAQ
WooCommerce: Customization FAQ
Rodolfo Melogli
Blogging for hackers (english)
Blogging for hackers (english)
Stephen Mariano Cabrera
De 0 a Polymer
De 0 a Polymer
Israel Blancas
GoCoding.Today For Rails - Episode1
GoCoding.Today For Rails - Episode1
Brian Hu
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
TJ Stalcup
Polymer - El fin a tus problemas con el FrontEnd
Polymer - El fin a tus problemas con el FrontEnd
Israel Blancas
Introduction to Django CMS
Introduction to Django CMS
Pim Van Heuven
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
TJ Stalcup
DevDay 2018 - Blazor
DevDay 2018 - Blazor
Denis Voituron
Web Development with Vim by Johannes Raggam
Web Development with Vim by Johannes Raggam
T. Kim Nguyen
Kentico Cloud Best Practices
Kentico Cloud Best Practices
Kentico Software
Frontend Crash Course
Frontend Crash Course
Aaron Lamphere
Wade.Go Introduction Speech - SFD HCMC 2014
Wade.Go Introduction Speech - SFD HCMC 2014
Nguyễn Thành Hải
JSConf.eu Overview
JSConf.eu Overview
Raimonds Simanovskis
From website to mobile app - a journey
From website to mobile app - a journey
Martin Naumann
Word press plugin development
Word press plugin development
Md Shahjahan Jewel
Magento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASS
Bartek Igielski
Thinkful DC FrontEnd Crash Course - HTML & CSS
Thinkful DC FrontEnd Crash Course - HTML & CSS
TJ Stalcup
What's hot
(20)
Yeoman intro
Yeoman intro
Polymer - Una bella historia de amor
Polymer - Una bella historia de amor
WooCommerce: Customization FAQ
WooCommerce: Customization FAQ
Blogging for hackers (english)
Blogging for hackers (english)
De 0 a Polymer
De 0 a Polymer
GoCoding.Today For Rails - Episode1
GoCoding.Today For Rails - Episode1
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
Polymer - El fin a tus problemas con el FrontEnd
Polymer - El fin a tus problemas con el FrontEnd
Introduction to Django CMS
Introduction to Django CMS
Thinkful FrontEnd Crash Course - HTML & CSS
Thinkful FrontEnd Crash Course - HTML & CSS
DevDay 2018 - Blazor
DevDay 2018 - Blazor
Web Development with Vim by Johannes Raggam
Web Development with Vim by Johannes Raggam
Kentico Cloud Best Practices
Kentico Cloud Best Practices
Frontend Crash Course
Frontend Crash Course
Wade.Go Introduction Speech - SFD HCMC 2014
Wade.Go Introduction Speech - SFD HCMC 2014
JSConf.eu Overview
JSConf.eu Overview
From website to mobile app - a journey
From website to mobile app - a journey
Word press plugin development
Word press plugin development
Magento 2 Community Project - Moving from LESS to SASS
Magento 2 Community Project - Moving from LESS to SASS
Thinkful DC FrontEnd Crash Course - HTML & CSS
Thinkful DC FrontEnd Crash Course - HTML & CSS
Similar to Codemotion Rome 2016 - Polymer
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
Horacio Gonzalez
Polymer
Polymer
jskvara
Challenges of building a search engine like web rendering service
Challenges of building a search engine like web rendering service
Giacomo Zecchini
Web Components
Web Components
FITC
Intro To Django
Intro To Django
Udi Bauman
Beyond Polymer - JUG Summer Camp - 2015-09-18
Beyond Polymer - JUG Summer Camp - 2015-09-18
Horacio Gonzalez
Polymer Code Lab in Dart - DevFest Kraków 2014
Polymer Code Lab in Dart - DevFest Kraków 2014
jskvara
Serverless? How (not) to develop, deploy and operate serverless applications.
Serverless? How (not) to develop, deploy and operate serverless applications.
gjdevos
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 3/3 - Web Components avec Po...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 3/3 - Web Components avec Po...
Horacio Gonzalez
Process process process
Process process process
magnificode
wotxr-20190320rzr
wotxr-20190320rzr
Phil www.rzr.online.fr
Desenvolvimento Mobile Híbrido
Desenvolvimento Mobile Híbrido
Juliano Martins
Bundling Client Side Assets
Bundling Client Side Assets
Timothy Oxley
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutions
Mikhail Kuznetcov
Introduction to the IBM Watson Data Platform
Introduction to the IBM Watson Data Platform
Margriet Groenendijk
BreizhBeans - Web components
BreizhBeans - Web components
Horacio Gonzalez
Power up Magnolia CMS with OpenShift
Power up Magnolia CMS with OpenShift
Shekhar Gulati
“Micro Frontends”- You Keep Using That Word, I Don’t Think It Means What You ...
“Micro Frontends”- You Keep Using That Word, I Don’t Think It Means What You ...
Shem Magnezi
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
David Amend
Introduction to Web Components & Polymer Workshop - JS Interactive
Introduction to Web Components & Polymer Workshop - JS Interactive
John Riviello
Similar to Codemotion Rome 2016 - Polymer
(20)
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
ENIB 2015-2016 - CAI Web - S01E01- Côté navigateur 3/3 - Web components avec ...
Polymer
Polymer
Challenges of building a search engine like web rendering service
Challenges of building a search engine like web rendering service
Web Components
Web Components
Intro To Django
Intro To Django
Beyond Polymer - JUG Summer Camp - 2015-09-18
Beyond Polymer - JUG Summer Camp - 2015-09-18
Polymer Code Lab in Dart - DevFest Kraków 2014
Polymer Code Lab in Dart - DevFest Kraków 2014
Serverless? How (not) to develop, deploy and operate serverless applications.
Serverless? How (not) to develop, deploy and operate serverless applications.
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 3/3 - Web Components avec Po...
ENIB 2015 2016 - CAI Web S02E01- Côté Navigateur 3/3 - Web Components avec Po...
Process process process
Process process process
wotxr-20190320rzr
wotxr-20190320rzr
Desenvolvimento Mobile Híbrido
Desenvolvimento Mobile Híbrido
Bundling Client Side Assets
Bundling Client Side Assets
Frontend microservices: architectures and solutions
Frontend microservices: architectures and solutions
Introduction to the IBM Watson Data Platform
Introduction to the IBM Watson Data Platform
BreizhBeans - Web components
BreizhBeans - Web components
Power up Magnolia CMS with OpenShift
Power up Magnolia CMS with OpenShift
“Micro Frontends”- You Keep Using That Word, I Don’t Think It Means What You ...
“Micro Frontends”- You Keep Using That Word, I Don’t Think It Means What You ...
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
Introduction to Web Components & Polymer Workshop - JS Interactive
Introduction to Web Components & Polymer Workshop - JS Interactive
Codemotion Rome 2016 - Polymer
1.
@granze Polymer is production
ready. How about you? Maurizio Mangione ROME 18-19 MARCH 2016
2.
@granze @Granze Google Developers Expert Milano
JS Founder
3.
@granze What is this
talk about?
4.
@granze I ♥ Polymer
5.
@granze Web Components
6.
@granze Custom Elements <my-component></my-component> <x-element attribute="test"></x-element>
7.
@granze HTML Imports <link rel="import"
href="path/to/component.html">
8.
@granze Templates <template id="template"> <div> <h1>Web Components</h1> <img
src="http://webcomponents.org/img/logo.svg"> </div> </template>
9.
@granze Shadow DOM var progressBar
= document.createElement('div'); var shadowRoot = progressBar.attachShadow({mode: 'closed'}); var template = document.getElementById('template'); shadowRoot.appendChild(template).content.cloneNode (true)); V1
10.
@granze webcomponents-lite.js
11.
@granze Standards
12.
@granze “Always bet on
Javascript” Brendan Eich
13.
@granze “Always bet on the
Web Platform” Me
14.
@granze
15.
@granze Let’s build an
App
16.
@granze 1 Create reusable
elements ● Start with the seed-element ● Use Polyserve ● Publish via Bower
17.
@granze <seed-element> ● Element boilerplate ●
Test ready ● Auto generated docs
18.
@granze
19.
@granze Visual and non-visual
elements
20.
@granze 2 Put things
together
21.
@granze How elements talk
to each other API API <child-component><child-component>
22.
@granze <g-tag my-attr="true"> Polymer({ is: 'g-tag', properties:
{ myAttr: { type: Boolean } } });
23.
@granze Mediator Pattern API API BUSINESS
LOGIC wrapper <child-component><child-component>
24.
@granze The wrapper
25.
@granze <x-app> <link rel="import" href="polymer/polymer.html"> <dom-module
id="x-app"> <template> <!-- add elements here --> </template> <script> Polymer({ is: 'x-app' }); </script> </dom-module>
26.
@granze index.html <!DOCTYPE html> <html lang="en"> <head> <link
rel="import" href="x-app/x-app.html"> </head> <body> <x-app></x-app> </body> </html>
27.
@granze <template is="dom-bind"> <body> <template id="app"
is="dom-bind"> <a href="#" on-click="sayHello">Click me!</a> </template> <script> const app = document.querySelector('#app'); app.sayHello = () => { console.log('Hello') }; </script> </body>
28.
@granze Should I use
Mediator Pattern?
29.
@granze Use what you
like the most ● Events (fire, listen) ● Flux-like architecture ● Your own solution
30.
@granze 3 Testing
31.
@granze Web component tester >
npm i -g web-component-tester > wct
32.
@granze Web component tester
33.
@granze 4 The build
step
34.
@granze Tools of the
trade ● Vulcanize ● Crisper ● NPM scripts or Gulp
35.
@granze Vulcanize > vulcanize target.html
> build.html
36.
@granze Crisper > cat index.html
| crisper -h build.html -j build.js
37.
@granze So, what I
need? ● Elements ● Let them talk to each other ● Test all the things ● Build/deploy
38.
@granze Polymer Starter Kit
39.
@granze PSK’s Hot features ●
Offline support ● Complete build chain ● Responsive app layout
40.
@granze Yeoman > npm i
-g yo > npm install -g generator-polymer > yo polymer
41.
@granze Ok sold, but
is not so easy...
42.
@granze
43.
@granze You can win! One
component at a time
44.
@granzeCredits: http://nocamels.com/2014/06/israeli-researchers-create-trojan-horse-of-chemotherapy
45.
@granze I don’t want
to add more stuff to my legacy app
46.
@granze Think about jQuery
plugins
47.
@granze Useful resources
48.
@granze Community http://polymer-slack.herokuapp.com
49.
@granze Polycasts
50.
@granze
51.
@granze Awesome Polymer
52.
@granze Should you build
your app entirely with Web Components?
53.
@granze Is up to
you!
54.
@granze Polymer is good
because ● Built on standards ● Freedom of choice ● Production ready...
55.
@granze ...how about you?
56.
@granze Thanks
Download now