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

Community: Base Libraries

Resources

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.657.039 weekly downloads)

    Simple. Fast. Web Components.

  • Stencil (671.808 weekly downloads)

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

  • solid-js (333.771 weekly downloads)

    The Deceptively Simple User Interface Library

  • FAST (86.704 weekly downloads)

    The adaptive interface system for modern web experiences

  • preact-custom-element (11.982 weekly downloads)

    Generate/register a custom element from a preact component

  • Lightning Web Components (7.659 weekly downloads)

    A Blazing Fast, Enterprise-Grade Web Components Foundation

  • haunted (5.743 weekly downloads)

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

  • Symbiote.js (3.517 weekly downloads)

    Library to create embedded components and data channels between them.

  • atomico (2.726 weekly downloads)

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

  • hybrids (2.331 weekly downloads)

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

  • CanJS (1.928 weekly downloads)

    Build CRUD apps in fewer lines of code

  • heresy (1.408 weekly downloads)

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

  • µce (721 weekly downloads)

    µhtml based Custom Elements.

  • µce-template (561 weekly downloads)

    A tiny toolless library with tools included

  • @skatejs/element (285 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.

  • Omi (268 weekly downloads)

    Front End Cross-Frameworks Framework

  • hyperhtml-element (249 weekly downloads)

    An extensible class to define hyperHTML based Custom Elements

  • litedom (81 weekly downloads)

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

  • slimjs (35 weekly downloads)

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

  • bay.js (21 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.

  • swiss (11 weekly downloads)

    Functional custom elements.

  • DataFormsJS (9 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 (6 weekly downloads)

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

  • Gallop (4 weekly downloads)

    Use full power of web components

  • Joist (2 weekly downloads)

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

  • ElemX (2 weekly downloads)

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

  • ReadyMade (1 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!