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

@ladrillosjs/build

v0.1.0-beta.1

Published

Optional standalone Web Component publishing compiler for LadrillosJS HTML components.

Readme

Hello World with LadrillosJS

Write a component in HTML. Use it without a build step. When you want to share it, @ladrillosjs/build turns it into a standalone Web Component that needs no Ladrillos runtime.

Requires Node.js 20.19+ for the commands below.

1. Create Your First Component

mkdir hello-ladrillos
cd hello-ladrillos
npm init -y

Create hello-world.html:

<p>Hello, {name}!</p>

<script>
  let name = "World";
</script>

Create index.html beside it:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Hello Ladrillos</title>
  </head>
  <body>
    <hello-world name="Ladrillos"></hello-world>
    <script type="module">
      import { registerComponent } from "https://cdn.jsdelivr.net/npm/ladrillosjs@2/dist/index.js";
      registerComponent("hello-world", "./hello-world.html");
    </script>
  </body>
</html>

Start a static server:

npx serve . -l 3000

Open http://localhost:3000. You should see Hello, Ladrillos! No compilation needed. Stop the server with Ctrl+C before the next commands.

2. Build a Standalone Component

Once the builder beta is published, install it in hello-ladrillos:

npm install --save-dev @ladrillosjs/build@beta

If you are publishing the builder for the first time, follow Publish the Builder Beta below first.

Create ladrillos.build.json. Replace YOUR_NPM_USERNAME with your npm username or an organization scope you can publish to:

{
  "name": "@YOUR_NPM_USERNAME/hello-world",
  "version": "0.1.0-beta.1",
  "outDir": "dist",
  "components": {
    "hello-world": "hello-world.html"
  }
}

Build it:

npx ladrillos-build

Your publishable package is now in dist/, including JavaScript, types, and component metadata. It has no Ladrillos runtime dependency.

To try that output locally, replace the entire script block in index.html with this line (don't load both versions of the same component):

<script type="module" src="./dist/hello-world.js"></script>

Run npx serve . -l 3000 again and reload. The same greeting now runs without Ladrillos. Stop the server when you're ready to publish.

3. Publish Your Component as a Beta

Run from hello-ladrillos. Sign in with an npm account that can publish to the scope you chose; complete any authentication prompts in your terminal/browser.

npm login
cd dist
npm pack --dry-run
npm publish --tag beta --access public
cd ..

Always include --tag beta. The version suffix alone does not keep npm from updating latest. Publish dist/, not the author project's root directory.

4. Try Your Published Beta

In a Vite or other bundler-based app:

npm install @YOUR_NPM_USERNAME/hello-world@beta
import "@YOUR_NPM_USERNAME/hello-world/hello-world";
<hello-world name="npm"></hello-world>

Or test in your existing index.html: replace its local script with this CDN URL after publishing. No install or consumer build is needed:

<script type="module"
  src="https://cdn.jsdelivr.net/npm/@YOUR_NPM_USERNAME/[email protected]/hello-world.js"></script>

CDN availability may lag briefly after publishing. For the next release, change the version in ladrillos.build.json to 0.1.0-beta.2, rebuild, and publish dist/ with --tag beta again. npm versions cannot be reused.

Publish the Builder Beta (Maintainers)

This publishes the author tool, not your Hello World component. From the LadrillosJS repository root, with npm publish permission for @ladrillosjs:

cd packages/build
npm ci
npm run typecheck
npm version 0.1.0-beta.1 --no-git-tag-version
npm pack --dry-run
npm login
npm publish --tag beta --access public
npm view @ladrillosjs/build dist-tags

Packaging builds the TypeScript sources automatically. Confirm that beta points to 0.1.0-beta.1. Choose an unused version if that version already exists. For another beta, run npm version prerelease --preid=beta --no-git-tag-version in packages/build, then repeat the dry run and publish command.

This builder is experimental and supports a subset of Ladrillos. For supported features, limitations, and API details, see the standalone publishing guide.