@LostInBrittany#MixingWebComponents @pariswebComps
Mixing Web Components
Horacio Gonzalez
@LostInBrittany
@LostInBrittany#MixingWebComponents @pariswebComps
Horacio Gonzalez
@LostInBrittany
Cityzen Data
http://cityzendata.com
Spaniard lost in Brittany,
developer, dreamer and all-
around geek
@LostInBrittany#MixingWebComponents @pariswebComps
Introduction
Because I love to tell old stories
@LostInBrittany#MixingWebComponents @pariswebComps
Polymer tour
@LostInBrittany#MixingWebComponents @pariswebComps
Web components == Revolution
Image: bu.edu
@LostInBrittany#MixingWebComponents @pariswebComps
Build a world brick by brick
Images: BitRebels & Brickset
@LostInBrittany#MixingWebComponents @pariswebComps
Variations of some questions
But does it really works with
<inser techno here/>?
And what about the other
web components technologies?
@LostInBrittany#MixingWebComponents @pariswebComps
Before summer
everything was ready
J'étais tranquille, j'étais pénard...
@LostInBrittany#MixingWebComponents @pariswebComps
And the Google made me a gift
The gift of living interesting moments...
@LostInBrittany#MixingWebComponents @pariswebComps
For several days I didn't slept
And tiredness began to take its toll
@LostInBrittany#MixingWebComponents @pariswebComps
But it worked
My polymer-beers lab was rewritten in time
@LostInBrittany#MixingWebComponents @pariswebComps
Will it work today?
I had prepared a rather traditional slidedeck
Comparing Polymer with X-Tag and Bosonic
Explaining how to make them work together
@LostInBrittany#MixingWebComponents @pariswebComps
So I decided a new approach
The truth is in the code
I FIND YOUR LACK OF SOURCE CODE
DISTURBING
@LostInBrittany#MixingWebComponents @pariswebComps
Web components polyfill
Making developers life a bit easier
@LostInBrittany#MixingWebComponents @pariswebComps
Web components polyfill library
Set of polyfills built on top of the Web Components specifications
@LostInBrittany#MixingWebComponents @pariswebComps
What's in webcomponents.js?
● Web Components
○ Custom Elements .
○ HTML Imports
○ Shadow DOM
● DOM
○ WeakMap
○ Mutation Observers
@LostInBrittany#MixingWebComponents @pariswebComps
Your own webcomponents!
Building directly over webcomponents.js
@LostInBrittany#MixingWebComponents @pariswebComps
Or webcomponent libraries
Also built on top of webcomponents.js
@LostInBrittany#MixingWebComponents @pariswebComps
Many webcomponents libraries
Based on the same polyfill
@LostInBrittany#MixingWebComponents @pariswebComps
Mixing webcomponents
My challenge today
@LostInBrittany#MixingWebComponents @pariswebComps
Objectifs
Using webcomponents from different
libraries in an AngularJS webapp
@LostInBrittany#MixingWebComponents @pariswebComps
Base project: Angular Beers!
https://github.com/LostInBrittany/angular-beers
@LostInBrittany#MixingWebComponents @pariswebComps
https://github.com/LostInBrittany/beyond-polymer
Let's show the code!
Image: dcplanet.fr
Coding is a superpower, friends
@LostInBrittany#MixingWebComponents @pariswebComps
angular-polymer-beers
Because directives are subpar webcomponents
@LostInBrittany#MixingWebComponents @pariswebComps
angular-polymer-xtag-beers
Polymer and X-tags play along nicely
@LostInBrittany#MixingWebComponents @pariswebComps
angular-polymer-react-beers
Thanks to Mathieu Ancelin (@TrevorReznik)
@LostInBrittany#MixingWebComponents @pariswebComps
angular-polymer-xtag-react-beers
And they all are happy...
@LostInBrittany#MixingWebComponents @pariswebComps
Thank you !

Mixing Web Components - Paris Web Components - 2015 09-16