npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

lwc

v8.26.1

Published

Lightning Web Components (LWC)

Readme

Lightning Web Components (LWC) is an enterprise-grade web components foundation for building user interfaces. LWC provides a simple authoring format for UI components, which is compiled into low-level Web Component APIs. The lwc package is the main entry point for dependencies.

  • Develop components quickly and declaratively using HTML, JavaScript, and CSS.
  • Develop accessible components so that everyone can understand and navigate your app.
  • Components are encapsulated in Shadow DOM, with the @lwc/synthetic-shadow package as an optional polyfill for older browsers.

Developing a Lightning web component is this easy:

counter
  ├──counter.css
  ├──counter.html
  └──counter.js
<!-- counter.html -->
<template>
    <p>Counter: {count}</p>
    <button onclick="{increaseCounter}">Add</button>
</template>
/* counter.css */
p {
    font-family: serif;
    font-size: large;
}
// counter.js
import { LightningElement } from 'lwc';

export default class Counter extends LightningElement {
    count = 0;

    increaseCounter() {
        this.count += 1;
    }
}

Supported Browsers

LWC supports all browsers supported in Salesforce Lightning Experience.

As of LWC v3.0.0, Microsoft® Internet Explorer® 11 is no longer supported.

Docs, Recipes, & Support

lwc.dev has all the information you need to develop components using LWC, including code recipes and code playgrounds.

For support, use the lwc tag on Stack Overflow or the lightning-web-components tag on Salesforce Stack Exchange.

When filing a bug, it's useful to use playground.lwc.dev to create a live reproduction of the issue.

Release Notes

Changes are documented at github.com/salesforce/lwc/releases.

The lwc package

This package (lwc) is a convenience package that re-exports all packages that might be used for LWC component development. Installing it also installs the core @lwc/* packages.

For example, to use @lwc/engine-server from this package, you can do:

import { renderComponent } from 'lwc/engine-server';

This is equivalent to:

import { renderComponent } from '@lwc/engine-server';

Experimental Packages

The @lwc/ssr-compiler and @lwc/ssr-runtime packages are still considered experimental, and may break without notice.

Experimental APIs

setTrustedSignalSet()

This experimental API enables the addition of a signal as a trusted signal. If the ENABLE_EXPERIMENTAL_SIGNALS feature is enabled, any signal value change will trigger a re-render.

If setTrustedSignalSet is called more than once, it will throw an error. If it is never called, then no trusted signal validation will be performed. The same setTrustedSignalSet API must be called on both @lwc/engine-dom and @lwc/signals.

isTrustedSignal()

Not intended for external use. This experimental API enables the caller to determine if an object is a trusted signal. The ENABLE_EXPERIMENTAL_SIGNALS feature must be enabled.

setContextKeys

Not intended for external use. Enables another library to establish contextful relationships via the LWC component tree. The connectContext and disconnectContext symbols that are provided are later used to identify methods that facilitate the establishment and dissolution of these contextful relationships. The ENABLE_EXPERIMENTAL_SIGNALS feature must be enabled.

setTrustedContextSet()

Not intended for external use. This experimental API enables the addition of context as trusted context. The ENABLE_EXPERIMENTAL_SIGNALS feature must be enabled.

If setTrustedContextSet is called more than once, it will throw an error. If it is never called, then context will not be connected.

ContextBinding

The context object's connectContext and disconnectContext methods are called with this object when contextful components are connected and disconnected. The ContextBinding exposes provideContext and consumeContext, enabling the provision/consumption of a contextful Signal of a specified variety for the associated component. The ENABLE_EXPERIMENTAL_SIGNALS feature must be enabled.

SignalBaseClass

Not intended for external use. Signals that extend SignalBaseClass will be added to set of trusted signals. The ENABLE_EXPERIMENTAL_SIGNALS feature must be enabled.