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. With libraries such as Polymer that are built on top of Web Components, it is now possible to easily create fast Progressive Web Apps (PWAs) without the overhead of a framework. This workshop is a hands-on introduction to Web Components and the Polymer library. You'll learn how to build your own components with both vanilla JavaScript and Polymer using the newly released Polymer 2.0 library, as well as assemble a simple PWA using existing open source Web Components. We'll also cover Custom Properties (CSS Variables), which are supported natively in all of today's modern browsers and polyfilled for older browsers by Polymer, to style our custom elements.