SlideShare a Scribd company logo
Future
proofing
design work
with Web
components
GovCon 2019
HAXTheWeb.org
Bryan Ollendyke
[at]btopro
Developer Activist
Experimentation platform that allows us to
envision and communicate what a NGDLE could
look like.
The most successful applications from
ELMS:LN are a course content management
system and a [art] studio instruction
management system.
ELMS:LN
My interface designer makes a
simple “button” for me to use
My interface designer makes a
simple “button” for me to use
I have to integrate my designer’s
“button” X number of buttons X
number of projects
My interface designer makes a
simple “button” for us to use
I have to integrate my designer’s
“button” X number of buttons X
number of projects
...My “team” will screw this up
So,... Pattern lab,.. Didn’t solve this?
No cause my drupal css and js be
like..
No cause my drupal css and js be
like..
”I just wanted to make
drupal look the right
way and I can’t”
Our prev designer
The CMS “template”
cake..
The CMS “template”
cake..
is a lie
2017 – 20xx
Future proof
“The 2000 year leap but for the web,
happened last year, and no one has
realized it yet”
- ?
“The 2000 year leap but for the web,
happened last year, and no one has
realized it yet”
- btopro
“The 2000 year leap but for the web,
happened last year, and no one has
realized it yet”
- btopro
reading this right now
We can all be BFFs and leverage each
other’s efforts without adopting every
aspect of each other’s work.
Welcome, to Web components.
The new
normal.
Web
Components
Wait, what are web components?
Web Components - meta specification
● Custom, reusable, encapsulated HTML tags
● For use in web pages and web apps
● They work in modern browsers
● They can be used with any JavaScript library or
framework
webcomponents.or
Web Components - meta specification
1. HTML Template <template>
2. Custom Elements <brand-new-tag></brand-new-
tag>
3. ES Modules <script type=”module”>
4. Shadow DOM <slot>
webcomponents.or
hello-world EITMLIF
(explain it to me like I’m five)
<div style="background:yellow;">
<a href="link.com"
style="color:black;">
Name
</a>
</div>
Example: Old Skool button
Web component button
<my-button
link="link.com"
title="Name">
</my-button>
Web component button
<my-button
link="link.com"
title="Name">
</my-button>
Web component button
But can I use these?
BC I NEED IE / Edge!
gs.statcounter.com
Windows 7 EOL 2020
gs.statcounter.com
So, that’s not IE 11
PC World - Jan 31, 2019
So, that’s still years away
Windows IT Pro Blog - Feb 6, 2019
<trident-death year=“2020”>
mspoweruser.com - Mar 24, 2019bgr.com - Dec 6, 2018
Global traffic stats - gs.statcounter.com
February 2019 (browserstack.com + physical devices)
● 🔥 Confirmed working -- 98.26%
● 🤗 Should work / unconfirmed -- 99.64%
● 🤗 Numbers are without a progressive enhancement
strategy
● Let’s talk Edge / IE
Analytics.usa.gov traffic data
July 2019
● 🔥 No polyfill, native -- 89.1%
● 🤗 Works with Polyfills -- 96.3%
● ?? “unknown browser” -- 2.9%
● 🤗 == 99.2% traffic; let’s say 98% gets web components
● Use progressive enhancement to pick up the last 2%
then!
HAXcms progressive enhancement strategy
All screens have rights! btopro.com/all-screen-rights
== NoJS == ~3% global traffic
ES5 web components + Polyfill == ~3% global traffic
Modern but old version – ES6 web components + Polyfill
~9%
Evergreen / ES6 web components – Native, fast, ~85%Haxtheweb.org
Who’s using this?
Sample code
Where can I get help
Community resources
Open-wc.org
open community resource
webcomponents.org
open community resource, google started
polymer-project.org
google
custom-elements-everywhere.com
testbed for WC spec against many libraries
Community resources
Community resources
So I can just use what I make then?
npm init @open-wc
npm start
npm run build
elmsln / wcfactory
This is a Drupal event so...Where’s
that?
Web components -> Drupal workflow
● Create – elements in local, isolated development
● Publish - to NPM / github as stand alone
● Build - compile to hit IE11 and up
● Integrate – directly into theme or via module
○ html.html.twig referencing polyfill / build
● Implement - Leverage components throughout Drupal
○ In other templates, body field, panels, etc
Twig templates
<my-button
link="{{ link|escape }}"
title="{{ name|escape }}">
<a href="{{ link|escape }}">
{{ name|escape }}
</a>
</my-button>
First : Theme templates
<my-button
link="<?php print $link;?>"
title="<?php print $name;?>">
<a href="<?php print $link;?>">
<?php print $name;?>
</a>
</my-button>
Even really old ones..
Live Example
Teach ”Drupal” about web
components
Teach ”Drupal” about web
components
Teach ”Drupal” about web
components
html.html.twig or html.php.tpl
We are kept separate by fictional walls
The web is the platform, stop letting
Drupal-isms own your site design!
Smash
Complacency
Drupal 6,7,8
WordPress
Joomla
GravCMS
All of it
Warner Bros
We have produced over 384 reusable web
components.
Of these, 331 are general purpose.
We have more available elements than anyone
I can find record of, including Google.
They are used by ELMS:LN, HAXcms, and in
the wider open web in any project. Any..
They have nothing requiring our projects.
Web
components
By
numbers
- Can share across projects
- Works across FE libraries / CMSs
- Complements Twig / Pattern Lab
- Not a Drupal-ism
Seuss Enterprises
Reuse anywhere
Even outside of
[gasp]
Drupal
- Can share across projects
- Works across FE libraries / CMSs
- Complements Twig / Pattern Lab
- Not a Drupal-ism
- Get off the island
Seuss Enterprises
Reuse anywhere
Even outside of
[gasp]
Drupal
- Can share across projects
- Works across FE libraries / CMSs
- Complements Twig / Pattern Lab
- Not a Drupal-ism
- Get off the island
- Get off the island
Seuss Enterprises
Reuse anywhere
Even outside of
[gasp]
Drupal
- Can share across projects
- Works across FE libraries / CMSs
- Complements Twig / Pattern Lab
- Not a Drupal-ism
- Get off the island
- Get off the island
- Get off the island
Seuss Enterprises
Reuse anywhere
Even outside of
[gasp]
Drupal
Disney / Marvel
“I once had strings but now..”
So w/o strings I can build what
exactly...
Get ready
<vaadin-upload>
<grid-plate>
<simple-fields>
<code-editor>
<video-player>
<lrn-table>
<multiple-choice>
<rss-items>
<iron-ajax>
<paper-button>
<simple-modal>
<self-check>
<wikipedia-query>
<lrn-math>
<user-action>
<simple-colors>
<q-r>
<license-element>
<simple-drawer>
<h-a-x>
Where
We
Work
With
Enough
Coffee
Anywhere
That
Loads
JavaScript
Where
We
Work
With
Enough
Coffee
Anywhere
That
Loads
JavaScript
Oh and now...
W00T!
HAX
HAXeditor
- 1 line to integrate <h-a-x>
+ 1 line reference <script type=“module”>
- Block editor in context
- Search remote sources in place
- HAX produced content will work without HAX
- Can edit legacy HTML
- A11y baked into platform and elements
- We eliminate many a11y issue in web dev
H.A.X.
Features
- Drupal 7 / 8 module
- WordPress plugin
- GravCMS plugin
- BackdropCMS module
- Beaker Browser (Dweb browser)
- Anything that saves body blobs of HTML
And of course...
- HAXcms
In the future (and past)
- HAXcms for Desktop
H.A.X.
Integrations
The last
“CMS”
HAXcms
<haxcms-site-builder>
Github.com
elmsln/HAXcms
HAXcms
Changing
The
game
for
“static site”
generators
H.A.X.
Demo
HAXTheWeb.org
Warner Bros
From Many, Many.
Bryan
Ollendyke
[at]btopro

More Related Content

What's hot

Don't sh** in the Pool
Don't sh** in the PoolDon't sh** in the Pool
Don't sh** in the PoolChris Jean
 
Child Theme
Child ThemeChild Theme
Child Theme
Shinichi Nishikawa
 
Untangling the web9
Untangling the web9Untangling the web9
Untangling the web9
Derek Jacoby
 
Plone for python programmers
Plone for python programmersPlone for python programmers
Plone for python programmers
Dylan Jay
 
JD17NL Joomla! Overrides and alternate layouts
JD17NL Joomla! Overrides and alternate layoutsJD17NL Joomla! Overrides and alternate layouts
JD17NL Joomla! Overrides and alternate layouts
Hans Kuijpers
 
Wordpress Questions & Answers
Wordpress Questions & AnswersWordpress Questions & Answers
Wordpress Questions & Answers
Nicole Dion
 
Untangling spring week4
Untangling spring week4Untangling spring week4
Untangling spring week4
Derek Jacoby
 
WordCamp Bournemouth 2014 - Designing with data in WordPress
WordCamp Bournemouth 2014 - Designing with data in WordPressWordCamp Bournemouth 2014 - Designing with data in WordPress
WordCamp Bournemouth 2014 - Designing with data in WordPress
Jonny Allbut
 
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
Jonny Allbut
 
Getting a CLUE at the Command Line
Getting a CLUE at the Command LineGetting a CLUE at the Command Line
Getting a CLUE at the Command Line
Emma Jane Hogbin Westby
 
Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?
Edmund Turbin
 
Plugins at WordCamp Phoenix
Plugins at WordCamp PhoenixPlugins at WordCamp Phoenix
Plugins at WordCamp PhoenixAndrew Ryno
 
5 things STILL! TOO! HARD! in Plone 5
5 things STILL! TOO! HARD! in Plone 55 things STILL! TOO! HARD! in Plone 5
5 things STILL! TOO! HARD! in Plone 5
Dylan Jay
 
Untangling spring week5
Untangling spring week5Untangling spring week5
Untangling spring week5
Derek Jacoby
 
Modern Front-End Development
Modern Front-End DevelopmentModern Front-End Development
Modern Front-End Development
mwrather
 
WordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow PresentationWordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow Presentation
Jonny Allbut
 
Plone 5 theming unleashed
Plone 5 theming unleashedPlone 5 theming unleashed
Plone 5 theming unleashed
sneridagh
 
Rapid WordPress theme development
Rapid WordPress theme developmentRapid WordPress theme development
Rapid WordPress theme development
Jonny Allbut
 
Implement rich snippets in your webshop
Implement rich snippets in your webshopImplement rich snippets in your webshop
Implement rich snippets in your webshop
Arjen Miedema
 

What's hot (20)

Don't sh** in the Pool
Don't sh** in the PoolDon't sh** in the Pool
Don't sh** in the Pool
 
Child Theme
Child ThemeChild Theme
Child Theme
 
Untangling the web9
Untangling the web9Untangling the web9
Untangling the web9
 
Plone for python programmers
Plone for python programmersPlone for python programmers
Plone for python programmers
 
JD17NL Joomla! Overrides and alternate layouts
JD17NL Joomla! Overrides and alternate layoutsJD17NL Joomla! Overrides and alternate layouts
JD17NL Joomla! Overrides and alternate layouts
 
Wordpress Questions & Answers
Wordpress Questions & AnswersWordpress Questions & Answers
Wordpress Questions & Answers
 
Untangling spring week4
Untangling spring week4Untangling spring week4
Untangling spring week4
 
WordCamp Bournemouth 2014 - Designing with data in WordPress
WordCamp Bournemouth 2014 - Designing with data in WordPressWordCamp Bournemouth 2014 - Designing with data in WordPress
WordCamp Bournemouth 2014 - Designing with data in WordPress
 
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
Build WordPress themes like a heavyweight - WordCamp Lancaster 2013
 
Getting a CLUE at the Command Line
Getting a CLUE at the Command LineGetting a CLUE at the Command Line
Getting a CLUE at the Command Line
 
Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?Theming in WordPress - Where do I Start?
Theming in WordPress - Where do I Start?
 
Plugins at WordCamp Phoenix
Plugins at WordCamp PhoenixPlugins at WordCamp Phoenix
Plugins at WordCamp Phoenix
 
5 things STILL! TOO! HARD! in Plone 5
5 things STILL! TOO! HARD! in Plone 55 things STILL! TOO! HARD! in Plone 5
5 things STILL! TOO! HARD! in Plone 5
 
WebGL Awesomeness
WebGL AwesomenessWebGL Awesomeness
WebGL Awesomeness
 
Untangling spring week5
Untangling spring week5Untangling spring week5
Untangling spring week5
 
Modern Front-End Development
Modern Front-End DevelopmentModern Front-End Development
Modern Front-End Development
 
WordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow PresentationWordCamp Sheffield 2014 Theme Workflow Presentation
WordCamp Sheffield 2014 Theme Workflow Presentation
 
Plone 5 theming unleashed
Plone 5 theming unleashedPlone 5 theming unleashed
Plone 5 theming unleashed
 
Rapid WordPress theme development
Rapid WordPress theme developmentRapid WordPress theme development
Rapid WordPress theme development
 
Implement rich snippets in your webshop
Implement rich snippets in your webshopImplement rich snippets in your webshop
Implement rich snippets in your webshop
 

Similar to Future proofing design work with Web components

Automate Yo' Self
Automate Yo' SelfAutomate Yo' Self
Automate Yo' Self
John Anderson
 
An introduction to Emulsify
An introduction to EmulsifyAn introduction to Emulsify
An introduction to Emulsify
valuebound
 
Untangling7
Untangling7Untangling7
Untangling7
Derek Jacoby
 
Upgrading your site from Drupal 6 to Drupal 7
Upgrading your site from Drupal 6 to Drupal 7Upgrading your site from Drupal 6 to Drupal 7
Upgrading your site from Drupal 6 to Drupal 7
Andrew Martha
 
Forensic Theming - DrupalCon London
Forensic Theming - DrupalCon LondonForensic Theming - DrupalCon London
Forensic Theming - DrupalCon London
Emma Jane Hogbin Westby
 
Intro to Drupal Slides - DrupalCampSC 2014
Intro to Drupal Slides - DrupalCampSC 2014Intro to Drupal Slides - DrupalCampSC 2014
Intro to Drupal Slides - DrupalCampSC 2014
Sarah Shealy
 
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal introEdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
Bryan Ollendyke
 
Building resuable and customizable Vue components
Building resuable and customizable Vue componentsBuilding resuable and customizable Vue components
Building resuable and customizable Vue components
Filip Rakowski
 
The Why and What of Pattern Lab
The Why and What of Pattern LabThe Why and What of Pattern Lab
The Why and What of Pattern Lab
Dave Olsen
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
Jay Epstein
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
Jay Epstein
 
OOScss Architecture For Rails Apps
OOScss Architecture For Rails AppsOOScss Architecture For Rails Apps
OOScss Architecture For Rails Apps
Netguru
 
HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19
btopro
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011
Ryan Price
 
A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3
Darren Wood
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)
Ivo Jansch
 
Drupal
DrupalDrupal
Drupal
btopro
 
Look ma! No images!
Look ma! No images!Look ma! No images!
Look ma! No images!
Lennart Schoors
 
Mad scientist-roadshow
Mad scientist-roadshowMad scientist-roadshow
Mad scientist-roadshow
Bryan Ollendyke
 

Similar to Future proofing design work with Web components (20)

Automate Yo' Self
Automate Yo' SelfAutomate Yo' Self
Automate Yo' Self
 
An introduction to Emulsify
An introduction to EmulsifyAn introduction to Emulsify
An introduction to Emulsify
 
Untangling7
Untangling7Untangling7
Untangling7
 
Upgrading your site from Drupal 6 to Drupal 7
Upgrading your site from Drupal 6 to Drupal 7Upgrading your site from Drupal 6 to Drupal 7
Upgrading your site from Drupal 6 to Drupal 7
 
Forensic Theming - DrupalCon London
Forensic Theming - DrupalCon LondonForensic Theming - DrupalCon London
Forensic Theming - DrupalCon London
 
Intro to Drupal Slides - DrupalCampSC 2014
Intro to Drupal Slides - DrupalCampSC 2014Intro to Drupal Slides - DrupalCampSC 2014
Intro to Drupal Slides - DrupalCampSC 2014
 
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal introEdTechJoker Spring 2020 - Lecture 7 Drupal intro
EdTechJoker Spring 2020 - Lecture 7 Drupal intro
 
Building resuable and customizable Vue components
Building resuable and customizable Vue componentsBuilding resuable and customizable Vue components
Building resuable and customizable Vue components
 
The Why and What of Pattern Lab
The Why and What of Pattern LabThe Why and What of Pattern Lab
The Why and What of Pattern Lab
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
OOScss Architecture For Rails Apps
OOScss Architecture For Rails AppsOOScss Architecture For Rails Apps
OOScss Architecture For Rails Apps
 
HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19HAXTheWeb @ Apereo 19
HAXTheWeb @ Apereo 19
 
BiancaAfonsoCV
BiancaAfonsoCVBiancaAfonsoCV
BiancaAfonsoCV
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011
 
A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3A practical guide to building websites with HTML5 & CSS3
A practical guide to building websites with HTML5 & CSS3
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)
 
Drupal
DrupalDrupal
Drupal
 
Look ma! No images!
Look ma! No images!Look ma! No images!
Look ma! No images!
 
Mad scientist-roadshow
Mad scientist-roadshowMad scientist-roadshow
Mad scientist-roadshow
 

More from btopro

ELMS:LN 2020 update @ Apereo
ELMS:LN 2020 update @ ApereoELMS:LN 2020 update @ Apereo
ELMS:LN 2020 update @ Apereo
btopro
 
EdTechJoker Open Activism Project
EdTechJoker Open Activism ProjectEdTechJoker Open Activism Project
EdTechJoker Open Activism Project
btopro
 
Lecture13 Containers
Lecture13   ContainersLecture13   Containers
Lecture13 Containers
btopro
 
Ed techjoker faculty presentation
Ed techjoker faculty presentationEd techjoker faculty presentation
Ed techjoker faculty presentation
btopro
 
IST 402 Presentation by Sonya
IST 402 Presentation by SonyaIST 402 Presentation by Sonya
IST 402 Presentation by Sonya
btopro
 
Lecture11 - Accessibility
Lecture11  - AccessibilityLecture11  - Accessibility
Lecture11 - Accessibility
btopro
 
EdTechJoker - HAXTheWeb
EdTechJoker - HAXTheWebEdTechJoker - HAXTheWeb
EdTechJoker - HAXTheWeb
btopro
 
ClassicPress / WordPress
ClassicPress / WordPressClassicPress / WordPress
ClassicPress / WordPress
btopro
 
Grav CMS
Grav CMSGrav CMS
Grav CMS
btopro
 
HAX camp 2019 - HAX The Camp address
HAX camp 2019 - HAX The Camp addressHAX camp 2019 - HAX The Camp address
HAX camp 2019 - HAX The Camp address
btopro
 
HAX camp 2019 - Welcome
HAX camp 2019 - WelcomeHAX camp 2019 - Welcome
HAX camp 2019 - Welcome
btopro
 
Web components and Package managers
Web components and Package managersWeb components and Package managers
Web components and Package managers
btopro
 
HTML / CSS / JS Web basics
HTML / CSS / JS Web basicsHTML / CSS / JS Web basics
HTML / CSS / JS Web basics
btopro
 
Background info on git / github
Background info on git / githubBackground info on git / github
Background info on git / github
btopro
 
EdTechJoker IST 402 - Syllabus day
EdTechJoker IST 402 - Syllabus dayEdTechJoker IST 402 - Syllabus day
EdTechJoker IST 402 - Syllabus day
btopro
 
The case for Web components - Drupal4Gov webinar
The case for Web components - Drupal4Gov webinarThe case for Web components - Drupal4Gov webinar
The case for Web components - Drupal4Gov webinar
btopro
 
HAX - Chaotic Good
HAX - Chaotic GoodHAX - Chaotic Good
HAX - Chaotic Good
btopro
 
Open Apereo - Web components workshop
Open Apereo - Web components workshopOpen Apereo - Web components workshop
Open Apereo - Web components workshop
btopro
 
Web components training setup knowledge
Web components training setup knowledgeWeb components training setup knowledge
Web components training setup knowledge
btopro
 
The case for web components in government
The case for web components in governmentThe case for web components in government
The case for web components in government
btopro
 

More from btopro (20)

ELMS:LN 2020 update @ Apereo
ELMS:LN 2020 update @ ApereoELMS:LN 2020 update @ Apereo
ELMS:LN 2020 update @ Apereo
 
EdTechJoker Open Activism Project
EdTechJoker Open Activism ProjectEdTechJoker Open Activism Project
EdTechJoker Open Activism Project
 
Lecture13 Containers
Lecture13   ContainersLecture13   Containers
Lecture13 Containers
 
Ed techjoker faculty presentation
Ed techjoker faculty presentationEd techjoker faculty presentation
Ed techjoker faculty presentation
 
IST 402 Presentation by Sonya
IST 402 Presentation by SonyaIST 402 Presentation by Sonya
IST 402 Presentation by Sonya
 
Lecture11 - Accessibility
Lecture11  - AccessibilityLecture11  - Accessibility
Lecture11 - Accessibility
 
EdTechJoker - HAXTheWeb
EdTechJoker - HAXTheWebEdTechJoker - HAXTheWeb
EdTechJoker - HAXTheWeb
 
ClassicPress / WordPress
ClassicPress / WordPressClassicPress / WordPress
ClassicPress / WordPress
 
Grav CMS
Grav CMSGrav CMS
Grav CMS
 
HAX camp 2019 - HAX The Camp address
HAX camp 2019 - HAX The Camp addressHAX camp 2019 - HAX The Camp address
HAX camp 2019 - HAX The Camp address
 
HAX camp 2019 - Welcome
HAX camp 2019 - WelcomeHAX camp 2019 - Welcome
HAX camp 2019 - Welcome
 
Web components and Package managers
Web components and Package managersWeb components and Package managers
Web components and Package managers
 
HTML / CSS / JS Web basics
HTML / CSS / JS Web basicsHTML / CSS / JS Web basics
HTML / CSS / JS Web basics
 
Background info on git / github
Background info on git / githubBackground info on git / github
Background info on git / github
 
EdTechJoker IST 402 - Syllabus day
EdTechJoker IST 402 - Syllabus dayEdTechJoker IST 402 - Syllabus day
EdTechJoker IST 402 - Syllabus day
 
The case for Web components - Drupal4Gov webinar
The case for Web components - Drupal4Gov webinarThe case for Web components - Drupal4Gov webinar
The case for Web components - Drupal4Gov webinar
 
HAX - Chaotic Good
HAX - Chaotic GoodHAX - Chaotic Good
HAX - Chaotic Good
 
Open Apereo - Web components workshop
Open Apereo - Web components workshopOpen Apereo - Web components workshop
Open Apereo - Web components workshop
 
Web components training setup knowledge
Web components training setup knowledgeWeb components training setup knowledge
Web components training setup knowledge
 
The case for web components in government
The case for web components in governmentThe case for web components in government
The case for web components in government
 

Recently uploaded

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
RinaMondal9
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 

Recently uploaded (20)

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Free Complete Python - A step towards Data Science
Free Complete Python - A step towards Data ScienceFree Complete Python - A step towards Data Science
Free Complete Python - A step towards Data Science
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 

Future proofing design work with Web components

Editor's Notes

  1. Wait, what is that exactly?
  2. Wait, what is that exactly?
  3. Wait, what is that exactly?
  4. Icon created by Creative Stall from the Noun Project
  5. Icon created by Creative Stall from the Noun Project
  6. Icon created by Creative Stall from the Noun Project
  7. Icon created by Creative Stall from the Noun Project
  8. Wait, what is that exactly?
  9. Custom Elements A method of defining new HTML tags. Shadow DOM Use encapsulated style and markup in web components. ES Modules Defines the inclusion and reuse of JS documents in a standards based, modular, performant way. <script type="module"> HTML Template A method of declaring a portion of reusable markup that is parsed but not rendered until cloned.
  10. Wait, what is that exactly?
  11. Originally we would have made the link this way
  12. [Cassondra] Interject - What happens if the JavaScript doesn't load?! You get nothing. Empty page.
  13. [Cassondra] Interject - What happens if the JavaScript doesn't load?! You get nothing. Empty page.
  14. [Cassondra] Interject - What happens if the JavaScript doesn't load?! You get nothing. Empty page.
  15. Insert No one’s using this, I’ve never heard of it
  16. Wait, what is that exactly?
  17. Talk about separating your content from your presentation layer! When this component upgrades, it will transform into either an accordion or a tab set. But which one?
  18. Wait, what is that exactly?
  19. Wait, what is that exactly?
  20. Insert No one’s using this, I’ve never heard of it
  21. This is exactly why we built WCFactory WCFactory is the helpful sidekick Inspired by the work at Red Hat reducing the barrier to entry when creating new components Our goal is not to hook you on a toolchain, it’s to help you over the initial barriers to creating and managing your compont libraries.
  22. This is exactly why we built WCFactory WCFactory is the helpful sidekick Inspired by the work at Red Hat reducing the barrier to entry when creating new components Our goal is not to hook you on a toolchain, it’s to help you over the initial barriers to creating and managing your compont libraries.
  23. Wait, what is that exactly?
  24. Wait, what is that exactly?
  25. Icon created by Creative Stall from the Noun Project
  26. Icon created by Creative Stall from the Noun Project
  27. Icon created by Creative Stall from the Noun Project
  28. Icon created by Creative Stall from the Noun Project
  29. Icon created by Creative Stall from the Noun Project
  30. Icon created by Creative Stall from the Noun Project
  31. Icon created by Creative Stall from the Noun Project
  32. Icon created by Creative Stall from the Noun Project
  33. Icon created by Creative Stall from the Noun Project
  34. Icon created by Creative Stall from the Noun Project
  35. Icon created by Creative Stall from the Noun Project
  36. Icon created by Creative Stall from the Noun Project
  37. Icon created by Creative Stall from the Noun Project