<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Constantine Kaganis</title>
    <description>The latest articles on DEV Community by Constantine Kaganis (@greekkid).</description>
    <link>https://dev.to/greekkid</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F374337%2Fa16b5e25-85b2-43c6-b705-36339f12b4ba.png</url>
      <title>DEV Community: Constantine Kaganis</title>
      <link>https://dev.to/greekkid</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/greekkid"/>
    <language>en</language>
    <item>
      <title>Web Components!</title>
      <dc:creator>Constantine Kaganis</dc:creator>
      <pubDate>Mon, 27 Apr 2020 02:21:46 +0000</pubDate>
      <link>https://dev.to/greekkid/web-components-d7b</link>
      <guid>https://dev.to/greekkid/web-components-d7b</guid>
      <description>&lt;p&gt;Web Components are a set of web platform APIs that allow you to create new custom, reusable, encapsulated HTML tags to use in web pages and web apps. If you are familiar with building components in libraries like React or Angular, Web Components should feel similar. Thanks to them, developers are no longer limited to the existing HTML tags that the browser vendors provide.&lt;/p&gt;

&lt;p&gt;The three main building blocks of Web Components:&lt;/p&gt;

&lt;p&gt;Custom Elements&lt;br&gt;
    Create custom HTML tags&lt;br&gt;
    Create Custom Class&lt;br&gt;
    Lifecycle methods available&lt;/p&gt;

&lt;p&gt;Shadow DOM&lt;br&gt;
    Used for Self-Contained components&lt;br&gt;
    Encapsulates styles and markups&lt;br&gt;
    Create with element.attachShadow({ mode: open})&lt;br&gt;
    Creates a ShadowRoot that can be referenced and interacted with&lt;/p&gt;

&lt;p&gt;HTML Templates&lt;br&gt;
    Define the encapsulated markup of our web component&lt;br&gt;
    Template tag stores markup on a page&lt;br&gt;
    Include both HTML and CSS in templates&lt;br&gt;
    Use slots to add custom text&lt;/p&gt;

&lt;p&gt;HTML Templates are supported in Google Chrome, Mozilla Firefox, Microsoft Edge, Safari, and Opera. Support for an early version of Custom Elements and Shadow DOM, known as "v0", is present in some Blink-based browsers like Google Chrome and Opera and is in Mozilla Firefox (requires a manual configuration change). The newer Custom Elements and Shadow DOM "v1" APIs are implemented in Safari, Google Chrome, and Mozilla Firefox and are in development for Microsoft Edge. Backward compatibility with older browsers is implemented using JavaScript-based polyfills.&lt;/p&gt;

&lt;p&gt;Web Components are amazing. It is a great addition to the coding world! A business could really benefit from adding them to their webpages. &lt;/p&gt;

&lt;p&gt;Youtube Video: &lt;a href="https://youtu.be/1ic4ERh7F00"&gt;https://youtu.be/1ic4ERh7F00&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
