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 🙏

© 2026 – Pkg Stats / Ryan Hefner

@ticketlayer/elements

v5.9.0

Published

Ticketlayer UI components built with Stencil.js

Readme

Ticketlayer Elements

Embeddable UI components for selling tickets with Ticketlayer: event lists and cards, ticket and seat selection, cart, checkout, order confirmation, tickets and a customer account, built with Stencil as framework-agnostic web components.

| Package | What | |---|---| | @ticketlayer/elements | the web components (<tl-event-list>, <tl-cart>, ...), lazy-loaded via loader/ or bundled from dist/ | | @ticketlayer/elements-react | React wrappers (<TlEventList />, <TlCart />, ...), generated from this build in ../elements-react |

Every element binds to the @ticketlayer/live client the host page publishes (createLiveClient), so nothing here takes an API key.

<script src="https://cdn.staging.t9r.dev/v1/ticketlayer.js"
        data-publishable-key="tlpk_..."
        data-api-url="https://live-staging.t9r.dev"
        data-checkout-base="https://hbo.staging.t9r.dev"></script>
<tl-event-list></tl-event-list>
<tl-cart-badge></tl-cart-badge>

The @ticketlayer/live drop-in above loads the Elements bundle itself from /elements/v1/ticketlayer-elements/ticketlayer-elements.esm.js on the same CDN; the CDN image is built from main on every push.

  • docs/USAGE.md - installation, wiring the client, theming, events, framework notes
  • docs/COMPONENTS.md - props, events and examples for the post-purchase and account components
  • elements.catalogue.json - the machine-readable catalogue of every element: props, events, slots, CSS custom properties, supported runtimes and category. Generated by pnpm build:catalogue after a build (the build itself does not write it, so the check can fail) and checked in CI (pnpm test:catalogue).

Development

From the repository root, after pnpm install:

pnpm --filter @ticketlayer/elements build        # stencil build
pnpm --filter @ticketlayer/elements build:catalogue   # then the catalogue, explicitly
pnpm --filter @ticketlayer/elements-react build  # the React wrappers, from that build
pnpm --filter @ticketlayer/elements dev          # stencil dev server
pnpm --filter @ticketlayer/elements test         # spec tests
pnpm --filter @ticketlayer/elements test:catalogue

CLAUDE.md here is the working agreement for this package, the root AGENTS.md the rules for changing an element, and the root .claude/skills/add-element/SKILL.md the walkthrough for adding one.

Releases are driven by changesets: the workspace's packages are versioned as a linked group and published to npm with provenance by the release workflow on merge to main.

Licence

Proprietary: see LICENSE. Live9 Technologies Limited licenses it only to build, run or embed a Ticketlayer service, under the agreement on which it provides the account.