Track Webcomponents the Right Way Updates Daily
A curated list of awesome Web Components resources.
🏠 Home · 🔍 Search · 🔥 Feed · 📮 Subscribe · ❤️ Sponsor · 😺 mateusortiz/webcomponents-the-right-way · ⭐ 2.6K · 🏷️ Front-End Development
Mar 01, 2024
Class Based
- WebCell (⭐175) - Web Components engine based on VDOM, JSX, MobX & TypeScript.
Dec 26, 2023
Component Libraries
- AnywhereUI (⭐24) - Collection of rich web components that includes framework bindings. Created with StencilJS.
Nov 17, 2023
Components
<qr-code>
– Web component for rendering customizable, animate-able, SVG-based QR codes.
Component Libraries
- LDRS (⭐1.3k) - Lightweight, customizable loading animations/spinners.
- TrendChart Elements (⭐22) - Components to generate simple, light and responsive charts.
Oct 13, 2023
Components
<active-table>
- Editable table web component.
<deep-chat>
- Web component for chat with AI capabilities.
Feb 14, 2023
Design Systems
- Blueprint UI - Web Component based design system with flexible and lightweight components.
Jan 07, 2023
Testing Solutions
- capybara-shadowdom (⭐13) - Ruby gem that adds basic support for the Shadow DOM to Capybara.
- Cypress component tests for Lit - How to run component tests for a Lit web component with Cypress.
- cypress-lit (⭐24) - Test your Lit elements and native web components in Cypress with all the modern browsers.
- Developing Components: Testing - Using @web/test-runner for testing web components in a real browser.
- How To Automate Shadow DOM In Selenium WebDriver - Locating Shadow DOM elements using Selenium WebDriver in a Maven project.
- Native Automation support for Shadow DOM - Shadow DOM and open-source testing frameworks.
- Open Web Components: Testing - Opinionated package that combines and configures testing libraries.
- query-selector-shadow-dom (⭐218) - querySelector that can pierce Shadow DOM roots, useful for automated testing.
- Testing Shadow DOM elements in Selenium - In Selenium 4, there is now a way to access Shadow DOM nodes.
- Test web components with Playwright - So you’ve created a native web component or two. How do you test them in popular browsers?
- W3C Webdriver conquering automation of Shadow DOM - Shadow DOM tree and its interaction with the W3C Webdriver.
Jan 06, 2023
HTML Templates
Codelabs
Interoperability
Tutorials
Jan 05, 2023
Introduction
Custom Elements
Shadow DOM
HTML Templates
Jan 04, 2023
Class Based
- element-js (⭐18) - Simple and lightweight base classes for web components with a beautiful API.
Meta Frameworks
- Enhance - Web standards-based HTML framework for building lightweight web applications.
- luna-js (⭐5) - SSR framework that makes working with the WebComponents standard a breeze.
- Rocket - Modern web setup for static sites with a sprinkle of JavaScript.
- Web Components Compiler (⭐66) - Compiler to make server-side rendering of native web components easier.
- WebC (⭐1.3k) - Framework-independent standalone HTML serializer for generating markup for web components.
Jan 03, 2023
Introduction
Dec 22, 2022
Components
<theme-switch>
- Animated toggle button to switch between light, dark, and system theme.
Maintainers / 2011
- Created by @mateusortiz in 2014.
- Maintained by @web-padawan since 2018.
Dec 11, 2022
Introduction
Accessibility
History / 2019
History / 2018
History / 2017
History / 2016
History / 2015
History / 2014
History / 2013
History / 2012
Nov 11, 2022
History / 2018
History / 2016
History / 2014
Nov 08, 2022
Design Systems
- Astro Space UX Design System (⭐81) - Set of components to build rich space app experiences with established interaction patterns.
- Auro Design System - Alaska Airlines design system to innovate on ideas and collaborate on the future.
- FAST Components (⭐8.9k) - Library of Web Components based on the FAST design language.
- Nord - Nordhealth’s design system for products, digital experiences and brand.
- U-M Library Design System - University of Michigan Library Design System.
Nov 06, 2022
Custom Elements
Shadow DOM
Accessibility
Best Practices
Codelabs
Examples
- Nude UI (⭐204) - Collection of accessible, customizable, ultra-light web components.
Styling
Component Libraries
- AXA Pattern Library (⭐120) - AXA CH UI components library built with Web Components.
- Curvenote (⭐168) - Web components for creating interactive scientific articles.
- Dile Components (⭐65) - General use Web Components for websites and applications.
- Furo Webcomponents (⭐12) - Enterprise ready set of web components which work best with Eclipse Furo.
- Fusion Web Components (⭐9) - Ser of web components used by Equinor Fusion.
- Ignite UI Web Components (⭐104) - Complete library of UI components from Infragistics.
- Medblocks UI (⭐46) - Web Components for rapid development of openEHR and FHIR systems.
- Mutation testing elements (⭐26) - A schema for mutation testing results with the web components to visualize it.
- One Platform Components (⭐28) - Set of web components for Red Hat One Platform.
- Playground Elements (⭐473) - Serverless code experiences with web components.
- Stripe Elements (⭐78) - Custom Element Wrapper for Stripe.js v3 Elements.
- Titanium Elements (⭐15) - Collection of lightweight web components used by Leavitt Group Enterprises.
- Umbraco UI Components (⭐96) - Collection of user interface web components for Umbraco CMS.
- VSCode Webview Elements (⭐0) - Components for creating VSCode extensions which use the Webview API.
- Webmarkets web components (⭐1) - Set of Webmarkets' public web components.
Design Systems
- Carbon Web Components (⭐464) - Carbon Design System variant on top of Web Components.
- Clarity Core Web Components (⭐147) - Suite of web components from the Clarity Design System.
- Forge Components (⭐22) - Library of Web Components adhering to the Forge Design System.
- Liquid (⭐60) - UI component library based on the Liquid Design System.
- Material Web Components (⭐8.3k) - Material Design implemented as Web Components.
- Momentum UI Web Components (⭐183) - Set of UI components based on Momentum Design.
- OutlineJS (⭐120) - Web component based design system starter kit.
- Pharos Design System (⭐104) - JSTOR's design system to create cohesive, supportive, and beautiful experiences.
- Red Hat Design System (⭐70) - Web components for building uniform experiences with the Red Hat brand.
- Siemens iX Web Components (⭐141) - Web Components implementing Siemens iX design system.
Class Based
- Forge Core (⭐3) - Building blocks and utilities that are used when building Forge Web Components.
- Joist (⭐106) - Set of small libraries designed to add the bare minimum to web components to make you productive.
- Lit - Simple library for building fast, lightweight web components.
Functional
- Solid Element (⭐31k) - Library that extends Solid adding Custom Web Components and extensions.
Integrations
- nuxt-custom-elements (⭐73) - Export your project components as custom elements for integration into external pages.
React
Sep 27, 2021
Tools
- Backlight — With collaboration between developers and designers at heart, Backlight is a very complete coding platform where teams build, document, publish, scale and maintain Design Systems.
Jun 25, 2021
Accessibility
Examples
- open-wc code examples - Collection of best practices and design patterns for developing web components.
May 23, 2021
Introduction
May 12, 2021
Case Studies
May 07, 2021
Case Studies
Component Libraries
- github-elements (⭐2.6k) - GitHub's Web Component collection.
- Vaadin components (⭐383) - Evolving set of high-quality web components for building business web applications.
Feb 24, 2021
Case Studies
Jan 09, 2021
Custom Elements
Codelabs
Jan 08, 2021
Styling
Nov 17, 2020
Podcasts
Nov 14, 2020
Starter Kits
- Create Open Web Components - Web component project scaffolding.
Tutorials
Nov 10, 2020
Best Practices
Tutorials
Oct 13, 2020
Tools
- webcomponents.dev - Component IDE for web platform developers.
Oct 01, 2020
Components
<player-x>
- Media player web component.
<vime-player>
- Customizable, extensible, accessible and framework agnostic media player.
Sep 08, 2020
Component Libraries
- Joomla UI custom elements (⭐32) - Compilation of Joomla 4 Custom Elements.
Sep 02, 2020
Shadow DOM
Sep 01, 2020
Design Systems
- Fluent UI Web Components (⭐17k) - Library of Web Components that supports Microsoft's Fluent design language.
Aug 31, 2020
Case Studies
Components
<fg-modal>
- Accessible modal dialog web component.
Use Cases
Aug 28, 2020
Components
<midi-player>
- MIDI file player and visualizer web components.
Tutorials
Aug 25, 2020
Case Studies
Components
<api-viewer>
- API documentation and live playground for Web Components.
<chess-board>
- Standalone chess board web component.
<css-doodle>
- Web component for drawing patterns with CSS.
<dark-mode-toggle>
- Custom element that allows to create a dark mode toggle or switch.
<emoji-picker>
- Lightweight emoji picker, distributed as a web component.
<file-viewer>
- Web component built with Svelte to view files.
<json-viewer>
- Web component to visualize JSON data in a tree view.
<lite-youtube>
- Lite YouTube embed with a focus on visual performance.
<model-viewer>
- Web component for rendering interactive 3D models.
<progressive-image>
- Custom element to progressively enhance image placeholders.
<range-slider>
- Accessible range slider custom element with keyboard support.
<rapi-doc>
- Web component for creating documentation from OpenAPI Specification.
<shader-doodle>
- Web component for writing and rendering shaders.
<trix-editor>
- Rich text editor custom element for everyday writing.
<web-vitals>
- Bring web vitals (⭐7k) quickly into your page using custom elements.
Aug 24, 2020
Component Libraries
- Warp View (⭐8) - Collection of charting web components for Warp 10.
Design Systems
- Lyne Components (⭐31) - Building blocks of the Lyne Design System are based on Web Components.
Class Based
- Panel (⭐270) - Web Components + Virtual DOM: web standards for powerful UIs.
Aug 20, 2020
Tools
- Custom Elements Locator (⭐38) - Chrome extension to find custom elements on a page.
Aug 19, 2020
Component Libraries
- Smart Web Components (⭐411) - Web components for business applications.
Tools
- @storybook/web-components - UI development environment for plain web-component snippets.
Jul 16, 2020
Component Libraries
- Shoelace (⭐12k) - A forward-thinking library of web components.
Jul 14, 2020
Class Based
- FAST Element (⭐8.9k) - Lightweight library for building performant, memory-efficient, standards-compliant Web Components.
Integrations
- reactify-wc (⭐170) - Use web components with React properties and functions.
Jul 10, 2020
History / 2013
Jul 09, 2020
Component Libraries
- Immersive Custom Elements (⭐134) - Set of web components for embedding immersive (VR & AR) content.
- Open Business Application Platform Web Components (⭐12) - Collection of web components designed for business applications.
Jul 08, 2020
Component Libraries
- Ketch.UP (⭐9) - Web components library for Sme.UP.
Design Systems
- GOV.UK Web Components (⭐4) - Set of encapsulated web components consuming the GOV.UK Design System.
Jul 07, 2020
Integrations
- @adobe/react-webcomponent (⭐103) - Automate the wrapping of a React component in a custom element.
Tools
- Web Components Codemods (⭐6) - Codemods for Web Components.
Jul 06, 2020
Angular
Jun 29, 2020
Component Libraries
- Pixano Elements (⭐35) - Re-usable web components dedicated to data annotation tasks.
Presentations
Jun 18, 2020
Limitations
Styling
History / 2017
Jun 16, 2020
Component Libraries
- XWeather (⭐6) - Collection of web components implementing portions of the OpenWeatherMap API.
Jun 11, 2020
History / 2012
Jun 09, 2020
Benchmarks
Testing Solutions
- shadow-automation-selenium (⭐97) - Shadow DOM automation using Selenium.
Jun 08, 2020
Component Libraries
- Blaze UI Atoms (⭐1.5k) - Set of web components powered by Blaze CSS.
Jun 05, 2020
Svelte
Jun 04, 2020
Architecture
Jun 03, 2020
Component Libraries
- Nightingale (⭐111) - Data visualisation web components for the life sciences.
Talks
Jun 02, 2020
Architecture
Component Libraries
- TEI Publisher Components (⭐18) - Collection of web components used by TEI Publisher and apps generated by it.
Integrations
- ember-custom-elements (⭐15) - Render Ember and Glimmer components using custom elements.
- react-shadow (⭐1.3k) - Utilise Shadow DOM in React with all the benefits of style encapsulation.
Jun 01, 2020
Angular
Podcasts
Presentations
May 28, 2020
Design Systems
- Crayons (⭐189) - Collection of web components that adheres to the Freshworks Design System.
Podcasts
May 27, 2020
Case Studies
Component Libraries
- elements-sk (⭐29) - Collection of custom elements for "a la carte" web development.
- Lume (⭐1.2k) - Custom elements for defining 2D or 3D scenes rendered with CSS3D or WebGL.
Design Systems
- Bolt Design System (⭐288) - Twig and Web Component-powered UI components, reusable visual styles and tooling.
May 26, 2020
Accessibility
Examples
- generic-components (⭐548) - Collection of generic web components with a focus on accessibility, and ease of use.
- howto-components (⭐860) - Collection of web components that implement common web UI patterns.
- vanilla-retro-js (⭐14) - Vanilla JS UI component library of HTML deprecated tags.
- web-components-examples (⭐2.9k) - Series of web components examples, related to the MDN web components documentation.
Architecture
Starter Kits
- nutmeg (⭐115) - Build, test, and publish vanilla Web Components with a little spice.
Talks
May 25, 2020
Component Libraries
- Apollo Elements (⭐413) - Custom elements for using Apollo GraphQL with various web components libraries.
- Blackstone UI (⭐76) - Web components for creating interfaces by Blackstone Publishing.
Starter Kits
- custom-element-boilerplate (⭐157) - Boilerplate for creating a custom element.
- hello-web-components (⭐25) - Simple starter hello world web component written in TypeScript.
May 23, 2020
Interoperability
May 22, 2020
Meta Frameworks
- AMP (⭐15k) - Web component framework to easily create user-first experiences for the web.
Component Libraries
- Brightspace UI core (⭐51) - Collection of web components for building Brightspace applications.
- Clever components (⭐198) - Collection of Web Components made by Clever Cloud.
- DataFormsJS (⭐177) - Standalone Components for SPA routing, displaying data from web services, and more.
- Elix (⭐800) - High-quality, customizable web components for common user interface patterns.
- Lion Web Components (⭐1.7k) - Set of highly performant, accessible and flexible Web Components.
- LRNWebComponents (⭐235) - ELMS:LN produced web components for any project.
- Microsoft Graph Toolkit (⭐880) - Collection of web components for the Microsoft Graph.
- Nuxeo Elements (⭐27) - Components for building web applications with Nuxeo using Web Components.
- Tradeshift Elements (⭐14) - Reusable Tradeshift UI Components as Web Components.
- Wired Elements (⭐9.6k) - Set of common UI elements with a hand-drawn, sketchy look.
- Wokwi Elements (⭐154) - Web Components for Arduino and various electronic parts.
Design Systems
- Calcite Components (⭐252) - Shared Web Components for Esri's Calcite design framework.
- Helix UI (⭐56) - Web Component library for the Helix Design System.
- NuML | NUDE Elements (⭐336) - HTML Framework and Design System based on Web Components and runtime CSS generation.
- PatternFly Elements (⭐370) - Collection of flexible and lightweight Web Components based on the Unified Design Kit.
- Spectrum Web Components (⭐1.1k) - Adobe Spectrum design language implementation built with Web Components.
- UI5 Web Components (⭐1.4k) - Set of reusable UI elements implementing SAP Fiori Design Guidelines.
- Zooplus web components (⭐45) - Set of web components that implement Z+ shop style guide.
Presentations
May 21, 2020
Case Studies
Integrations
- preact-custom-element (⭐336) - Generate/register a custom element from a preact component.
Benchmarks
- web-components-benchmark - Benchmark Web Components technologies with various examples.
- web-components-todo - The same todo application built in different Web Components libraries for benchmark purpose.
May 19, 2020
CSS Shadow Parts
Tutorials
May 18, 2020
Class Based
- DNA (⭐37) - Progressive Web Components library.
- Tonic (⭐837) - Minimalist, stable, audit friendly component framework.
Tutorials
May 17, 2020
Use Cases
May 15, 2020
Tutorials
May 14, 2020
Codelabs
React
May 13, 2020
Tutorials
May 11, 2020
History / 2018
May 08, 2020
Introduction
History / 2014
May 07, 2020
Best Practices
History / 2019
History / 2017
May 06, 2020
Case Studies
Svelte
May 05, 2020
Custom Elements
Shadow DOM
HTML Templates
CSS Shadow Parts
Codelabs
May 01, 2020
Case Studies
Apr 30, 2020
React
Apr 29, 2020
Case Studies
Apr 27, 2020
Introduction
Custom Elements
Shadow DOM
HTML Templates
CSS Shadow Parts
Interoperability
Usage Metrics
Form-associated Custom Elements
- Form Participation API Explained - Document by Google Chrome team.
- Form-associated custom elements - Feature in Chrome platform status.
Constructable Stylesheet Objects
- Constructable Stylesheets - Feature in Chrome platform status.
Custom State Pseudo Class
Polyfills / Custom Elements polyfills
- @webcomponents/custom-elements (⭐1.1k) - Custom Elements polyfill by Polymer team.
- document-register-element (⭐1.1k) - Custom Elements polyfill by Andrea Giammarchi.
Polyfills / Customized Built-in Elements polyfills
- @corpuscule/custom-builtin-elements (⭐12) - Customized built-in elements polyfill by CorpusculeJS.
- @ungap/custom-elements-builtin (⭐104) - Customized built-in elements polyfill by ungap project.
Polyfills / Shadow DOM shims
- @webcomponents/shadydom (⭐1.1k) - ShadowDOM v1 shim.
- @webcomponents/shadycss (⭐1.1k) - ShadowDOM style encapsulation shim.
- @lwc/synthetic-shadow (⭐1.5k) - Shadow DOM polyfill by LWC.
Polyfills / HTML Templates polyfills
- @webcomponents/template (⭐1.1k) - Minimal polyfill for
<template>
.
- @ungap/import-node (⭐7) - An
importNode
polyfill for IE11 by ungap project.
Apr 21, 2020
Case Studies
Apr 20, 2020
History / 2016
Apr 17, 2020
History / 2018
History / 2014
Apr 16, 2020
Angular
Vue
History / 2018
History / 2016
History / 2015
Apr 15, 2020
Case Studies
Class Based
- Stencil (⭐12k) - Compiler for generating Web Components.
History / 2014
Sep 23, 2019
Integrations
- @riotjs/custom-elements (⭐34) - Simple API to create vanilla custom elements with Riot.js.
Aug 16, 2019
Interoperability
Jul 29, 2019
Podcasts
Jul 18, 2019
Tools
- web-component-analyzer (⭐490) - CLI that analyzes web components and emits documentation / diagnostics.
Jul 09, 2019
Miscellaneous
- Vaadin Directory - Publish, discuss and rate web components
Jun 28, 2019
Functional
- haunted (⭐2.6k) - React's Hooks API implemented for web components.
Jun 26, 2019
Functional
- atomico (⭐1.1k) - Small library for the creation of interfaces based on web components using functions and hooks.
Jun 12, 2019
Miscellaneous
- bruck (⭐512) - Prototyping system built with web components and the Houdini Paint API.
- webcomponents.org - Discuss & share web components.
Jun 03, 2019
Class Based
- Lightning Web Components (⭐1.5k) - blazing fast, enterprise-grade Web Components foundation.
May 20, 2019
Angular
Apr 16, 2019
History / 2011
Mar 21, 2019
Integrations
- remount (⭐675) - Mount React components to the DOM using custom elements.
Mar 17, 2019
Case Studies
Jan 01, 2019
Functional
- hybrids (⭐2.9k) - UI library for creating Web Components with simple and functional API.
Dec 20, 2018
Case Studies
Dec 17, 2018
Books
- Web Components in Action - Book by Ben Farrell, available at Manning early release program.
- Web Component Essentials - Book by Cory Rylan, early preview edition available at Leanpub.
Dec 14, 2018
Best Practices
Class Based
- Omi (⭐13k) - Next generation web framework in 4kb JavaScript (Web Components + JSX + Proxy + Store + Path Updating).
Dec 08, 2018
History / 2015
Dec 07, 2018
History / 2014
Dec 06, 2018
Angular
History / 2018
Dec 04, 2018
History / 2011
Dec 02, 2018
Class Based
- slim.js (⭐996) - Fast & Robust Front-End Micro-framework based on modern standards.
Dec 01, 2018
History / 2018
History / 2017
History / 2016
History / 2015
History / 2014
History / 2013
History / 2012