Community: Base Libraries
Resources
-
All the ways to build a web component a comparison of different web component libraries.
-
awesome lit-html a collection of resources related to lit-html, lit-element and general web components.
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 (5.742.670 weekly downloads)
Simple. Fast. Web Components.
-
solid-js (2.397.589 weekly downloads)
The Deceptively Simple User Interface Library
-
Stencil (1.177.724 weekly downloads)
Stencil is a toolchain for building reusable, scalable Design Systems.
-
FAST (271.133 weekly downloads)
The adaptive interface system for modern web experiences
-
Symbiote.js (105.122 weekly downloads)
Library to create embedded components and data channels between them.
-
Lightning Web Components (34.796 weekly downloads)
A Blazing Fast, Enterprise-Grade Web Components Foundation
-
preact-custom-element (28.454 weekly downloads)
Generate/register a custom element from a preact component
-
atomico (26.473 weekly downloads)
Atomico a micro-library for creating webcomponents using only functions, hooks and virtual-dom.
-
heresy (11.827 weekly downloads)
Don't simulate the DOM. Be the DOM. React-like Custom Elements via the V1 API built-in extends.
-
hybrids (11.355 weekly downloads)
The simplest way to create web components with plain objects and pure functions!
-
haunted (8.736 weekly downloads)
React's Hooks API but for standard web components and lit-html or hyperHTML
-
CanJS (3.197 weekly downloads)
Build CRUD apps in fewer lines of code
-
Omi (3.077 weekly downloads)
Front End Cross-Frameworks Framework
-
hyperhtml-element (1.449 weekly downloads)
An extensible class to define hyperHTML based Custom Elements
-
Gallop (782 weekly downloads)
Use full power of web components
-
Joist (491 weekly downloads)
A small (~2kb) library to help with the creation of web components and web component based applications
-
@skatejs/element (212 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 (104 weekly downloads)
µhtml based Custom Elements.
-
swiss (80 weekly downloads)
Functional custom elements.
-
FicusJS (51 weekly downloads)
FicusJS is a set of lightweight functions for developing applications using web components.
-
slimjs (38 weekly downloads)
a lightweight web component authoring library that provides extended capabilities for components (such as data binding) using es6 native class inheritance
-
litedom (25 weekly downloads)
A blazing fast view library to create Web Components and use Javascript Template Literals in HTML
-
µce-template (15 weekly downloads)
A tiny toolless library with tools included
-
DataFormsJS (15 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.
-
ReadyMade (9 weekly downloads)
JavaScript microlibrary for developing Web Components with Decorators
-
ElemX (5 weekly downloads)
Library for connecting MobX to native Web Components with a Vue-like template binding syntax
-
bay.js (5 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.
Note: want to add another base library to this list? Send us a pull request!