SlideShare a Scribd company logo
1 of 10
Download to read offline
Ehsan Lotfinia
Web Component Features
• Web Standard
• Framework / Technology Agnostic
• Future-proof
• Encapsulation
• Reusability
Web Component Technology
• Custom Elements ▷
• Shadow DOM ▷
. Isolated DOM
. Scoped CSS
• HTML Template ▷
. It is not added to DOM when the page is loaded.
. Ability enable to runtime
Web Components Compiler
• Polymer
• Stencil
• Slim.js
• Bit
• Skate.js
• Lit Element
• Hybrids
• Svelte
• Sigil
• Angular elements
Web Components UI Libraries
• Microsoft Fast
• UI5-WebComponents
• X-tag Web-Components
• Material IO
• Elix
• Wired JS
• Three Elements
• ...
Psudo Selector Web Component
• :host ▷
• :host-context ▷
• :slotted ▷
• :part ▷
Setup ▷
• Ng new angular-elements
• Ng add @angular/elements
• Npm i fs-extera concat –-save-dev
• Add to enteryComponent: [component]
• Remove bootstrap from @Ngmodule
• Add package.json > script
“build:elements”: “ng b –output-hashing none && node element-builder.js”
• Create element-builder.js in root project
Build
• Npm run build:elements
Web components

More Related Content

What's hot

Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
Module Web Applications - Pierre Dubois, Chief Executive and President, RequeaModule Web Applications - Pierre Dubois, Chief Executive and President, Requea
Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
mfrancis
 
eZ Publish Summer Camp 2013 - Building custom field types
eZ Publish Summer Camp 2013 - Building custom field typeseZ Publish Summer Camp 2013 - Building custom field types
eZ Publish Summer Camp 2013 - Building custom field types
Edi Modrić
 

What's hot (20)

Віталій Бобров — Web components, Polymer and Drupal
Віталій Бобров — Web components, Polymer and DrupalВіталій Бобров — Web components, Polymer and Drupal
Віталій Бобров — Web components, Polymer and Drupal
 
Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
Module Web Applications - Pierre Dubois, Chief Executive and President, RequeaModule Web Applications - Pierre Dubois, Chief Executive and President, Requea
Module Web Applications - Pierre Dubois, Chief Executive and President, Requea
 
Jekyll, static websites generator
Jekyll, static websites generatorJekyll, static websites generator
Jekyll, static websites generator
 
Jekyll Presentation Slides
Jekyll Presentation SlidesJekyll Presentation Slides
Jekyll Presentation Slides
 
Introduction to blogging with Jekyll
Introduction to blogging with JekyllIntroduction to blogging with Jekyll
Introduction to blogging with Jekyll
 
Build Reusable Web Components using HTML5 Web cComponents
Build Reusable Web Components using HTML5 Web cComponentsBuild Reusable Web Components using HTML5 Web cComponents
Build Reusable Web Components using HTML5 Web cComponents
 
2011 - SharePoint + jQuery
2011 - SharePoint + jQuery2011 - SharePoint + jQuery
2011 - SharePoint + jQuery
 
Getting started with angular js
Getting started with angular jsGetting started with angular js
Getting started with angular js
 
Java driver for mongo db
Java driver for mongo dbJava driver for mongo db
Java driver for mongo db
 
Binary Studio Academy PRO. JS course. Lecture 2. backbone
Binary Studio Academy PRO. JS course. Lecture 2. backboneBinary Studio Academy PRO. JS course. Lecture 2. backbone
Binary Studio Academy PRO. JS course. Lecture 2. backbone
 
The RAW stack
The RAW stackThe RAW stack
The RAW stack
 
Mobile applications in a new way with React Native
Mobile applications in a new way with React NativeMobile applications in a new way with React Native
Mobile applications in a new way with React Native
 
eZ Publish Summer Camp 2013 - Building custom field types
eZ Publish Summer Camp 2013 - Building custom field typeseZ Publish Summer Camp 2013 - Building custom field types
eZ Publish Summer Camp 2013 - Building custom field types
 
Angular js
Angular jsAngular js
Angular js
 
Portal - Lego set for app development
Portal - Lego set for app developmentPortal - Lego set for app development
Portal - Lego set for app development
 
MongoDB - Getting Started
MongoDB  - Getting StartedMongoDB  - Getting Started
MongoDB - Getting Started
 
New Features with Sitecore experience platform 9.0
New Features with Sitecore experience platform 9.0New Features with Sitecore experience platform 9.0
New Features with Sitecore experience platform 9.0
 
Introducing Nodejs - Javascript on the server
Introducing Nodejs - Javascript on the serverIntroducing Nodejs - Javascript on the server
Introducing Nodejs - Javascript on the server
 
Php course
Php coursePhp course
Php course
 
Ruby on Rails Workshop
Ruby on Rails WorkshopRuby on Rails Workshop
Ruby on Rails Workshop
 

Similar to Web components

Introduction to Browser DOM
Introduction to Browser DOMIntroduction to Browser DOM
Introduction to Browser DOM
Siva Arunachalam
 

Similar to Web components (20)

Web Components at Scale, HTML5DevConf 2014-10-21
Web Components at Scale, HTML5DevConf 2014-10-21Web Components at Scale, HTML5DevConf 2014-10-21
Web Components at Scale, HTML5DevConf 2014-10-21
 
JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!JEE Conf 2015: Less JS!
JEE Conf 2015: Less JS!
 
SharePoint Development in Government Environments
SharePoint Development in Government EnvironmentsSharePoint Development in Government Environments
SharePoint Development in Government Environments
 
The Time for Vanilla Web Components has Arrived
The Time for Vanilla Web Components has ArrivedThe Time for Vanilla Web Components has Arrived
The Time for Vanilla Web Components has Arrived
 
Introduction to Browser DOM
Introduction to Browser DOMIntroduction to Browser DOM
Introduction to Browser DOM
 
Web components
Web componentsWeb components
Web components
 
MEAN Stack Warm-up
MEAN Stack Warm-upMEAN Stack Warm-up
MEAN Stack Warm-up
 
Rapid development with Rails
Rapid development with RailsRapid development with Rails
Rapid development with Rails
 
Web component driven development
Web component driven developmentWeb component driven development
Web component driven development
 
Web components - An Introduction
Web components - An IntroductionWeb components - An Introduction
Web components - An Introduction
 
Agile sites311training
Agile sites311trainingAgile sites311training
Agile sites311training
 
Performance (browser)
Performance (browser)Performance (browser)
Performance (browser)
 
From MEAN to the MERN Stack
From MEAN to the MERN StackFrom MEAN to the MERN Stack
From MEAN to the MERN Stack
 
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
Convert your Full Trust Solutions to the SharePoint Framework (SPFx)
 
SharePoint Development in Government Environments
SharePoint Development in Government EnvironmentsSharePoint Development in Government Environments
SharePoint Development in Government Environments
 
TechEvent 2019: Nachhaltige Client-Architekturen mit Angular Elements; Thomas...
TechEvent 2019: Nachhaltige Client-Architekturen mit Angular Elements; Thomas...TechEvent 2019: Nachhaltige Client-Architekturen mit Angular Elements; Thomas...
TechEvent 2019: Nachhaltige Client-Architekturen mit Angular Elements; Thomas...
 
Masterin Large Scale Java Script Applications
Masterin Large Scale Java Script ApplicationsMasterin Large Scale Java Script Applications
Masterin Large Scale Java Script Applications
 
Web components, so close!
Web components, so close!Web components, so close!
Web components, so close!
 
Stencil the time for vanilla web components has arrived
Stencil the time for vanilla web components has arrivedStencil the time for vanilla web components has arrived
Stencil the time for vanilla web components has arrived
 
MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

JavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate GuideJavaScript Usage Statistics 2024 - The Ultimate Guide
JavaScript Usage Statistics 2024 - The Ultimate Guide
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

Web components

  • 2. Web Component Features • Web Standard • Framework / Technology Agnostic • Future-proof • Encapsulation • Reusability
  • 3. Web Component Technology • Custom Elements ▷ • Shadow DOM ▷ . Isolated DOM . Scoped CSS • HTML Template ▷ . It is not added to DOM when the page is loaded. . Ability enable to runtime
  • 4. Web Components Compiler • Polymer • Stencil • Slim.js • Bit • Skate.js • Lit Element • Hybrids • Svelte • Sigil • Angular elements
  • 5. Web Components UI Libraries • Microsoft Fast • UI5-WebComponents • X-tag Web-Components • Material IO • Elix • Wired JS • Three Elements • ...
  • 6. Psudo Selector Web Component • :host ▷ • :host-context ▷ • :slotted ▷ • :part ▷
  • 7.
  • 8. Setup ▷ • Ng new angular-elements • Ng add @angular/elements • Npm i fs-extera concat –-save-dev • Add to enteryComponent: [component] • Remove bootstrap from @Ngmodule • Add package.json > script “build:elements”: “ng b –output-hashing none && node element-builder.js” • Create element-builder.js in root project
  • 9. Build • Npm run build:elements