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 (925.857 weekly downloads)

    Simple. Fast. Web Components.

  • Stencil (543.570 weekly downloads)

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

  • solid-js (83.909 weekly downloads)

    The Deceptively Simple User Interface Library

  • FAST (41.535 weekly downloads)

    The adaptive interface system for modern web experiences

  • preact-custom-element (11.293 weekly downloads)

    Generate/register a custom element from a preact component

  • Lightning Web Components (5.908 weekly downloads)

    A Blazing Fast, Enterprise-Grade Web Components Foundation

  • hybrids (4.254 weekly downloads)

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

  • haunted (3.394 weekly downloads)

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

  • CanJS (2.591 weekly downloads)

    Build CRUD apps in fewer lines of code

  • Symbiote.js (1.199 weekly downloads)

    Library to create embedded components and data channels between them.

  • atomico (950 weekly downloads)

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

  • Omi (931 weekly downloads)

    Front End Cross-Frameworks Framework

  • hyperhtml-element (837 weekly downloads)

    An extensible class to define hyperHTML based Custom Elements

  • heresy (563 weekly downloads)

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

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

  • µce (325 weekly downloads)

    µhtml based Custom Elements.

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

  • litedom (126 weekly downloads)

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

  • swiss (30 weekly downloads)

    Functional custom elements.

  • slimjs (25 weekly downloads)

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

  • Joist (22 weekly downloads)

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

  • DataFormsJS (17 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.

  • µce-template (15 weekly downloads)

    A tiny toolless library with tools included

  • Gallop (15 weekly downloads)

    Use full power of web components

  • FicusJS (9 weekly downloads)

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

  • ReadyMade (4 weekly downloads)

    JavaScript microlibrary for developing Web Components with Decorators

  • ElemX (1 weekly downloads)

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

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