O with occluded right edge to appear also as a C Open Web Components Guides Docs Blog Toggle darkmode

Community: Base Libraries


Base libraries

Our generator sets you up with a component built with lit-html and lit-element as base libraries. We recommend this as a general starting point. lit-html and lit-element have a strong community, making it easy to find help and examples. It is actively maintained and creates a good balance between performance, developer experience and feature richness.

Other base libraries excel at other points and could be a great fit for your project as well. Below we show a listing of base libraries sorted by weekly NPM downloads. This is a very rough metric, and should not be the only means of judging the quality of a project.

  • lit (1.618.535 weekly downloads)

    Simple. Fast. Web Components.

  • Stencil (597.194 weekly downloads)

    Stencil is a toolchain for building reusable, scalable Design Systems.

  • solid-js (288.278 weekly downloads)

    The Deceptively Simple User Interface Library

  • FAST (88.763 weekly downloads)

    The adaptive interface system for modern web experiences

  • preact-custom-element (14.359 weekly downloads)

    Generate/register a custom element from a preact component

  • Lightning Web Components (6.689 weekly downloads)

    A Blazing Fast, Enterprise-Grade Web Components Foundation

  • Symbiote.js (4.699 weekly downloads)

    Library to create embedded components and data channels between them.

  • haunted (3.488 weekly downloads)

    React's Hooks API but for standard web components and lit-html or hyperHTML

  • atomico (2.946 weekly downloads)

    Atomico a micro-library for creating webcomponents using only functions, hooks and virtual-dom.

  • heresy (2.877 weekly downloads)

    Don't simulate the DOM. Be the DOM. React-like Custom Elements via the V1 API built-in extends.

  • hybrids (2.324 weekly downloads)

    The simplest way to create web components with plain objects and pure functions!

  • CanJS (1.545 weekly downloads)

    Build CRUD apps in fewer lines of code

  • µce-template (1.259 weekly downloads)

    A tiny toolless library with tools included

  • µce (1.242 weekly downloads)

    µhtml based Custom Elements.

  • Omi (651 weekly downloads)

    Front End Cross-Frameworks Framework

  • hyperhtml-element (337 weekly downloads)

    An extensible class to define hyperHTML based Custom Elements

  • bay.js (318 weekly downloads)

    An easy to use, lightweight library for web-components that doesn't need a build step but can be included in a build step if you want to. It's a great way to create reusable components for your projects. It's available as a NPM package or module and doesn't use any dependencies and is around 4.5kb minified + gzipped. It also doesn't use eval or new Function so can be used in strict CSP polices without a build step. For documentation and demos go to Bayjs.org.

  • @skatejs/element (167 weekly downloads)

    Skate is a library built on top of the W3C web component specs that enables you to write functional and performant web components with a very small footprint.

  • litedom (51 weekly downloads)

    A blazing fast view library to create Web Components and use Javascript Template Literals in HTML

  • Gallop (30 weekly downloads)

    Use full power of web components

  • DataFormsJS (25 weekly downloads)

    Set of Web Components that can be used to build Single Page Apps (SPA), Display JSON data from API’s and Web Services, and bind data to different elements on screen. All Web Components are plain JavaScript and require no build process.

  • FicusJS (19 weekly downloads)

    FicusJS is a set of lightweight functions for developing applications using web components.

  • Joist (10 weekly downloads)

    A small (~2kb) library to help with the creation of web components and web component based applications

  • slimjs (5 weekly downloads)

    a lightweight web component authoring library that provides extended capabilities for components (such as data binding) using es6 native class inheritance

  • ElemX (4 weekly downloads)

    Library for connecting MobX to native Web Components with a Vue-like template binding syntax

  • swiss (4 weekly downloads)

    Functional custom elements.

  • ReadyMade (2 weekly downloads)

    JavaScript microlibrary for developing Web Components with Decorators

Note: want to add another base library to this list? Send us a pull request!