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

@atlfluidart/rulecms-components

v0.6.9

Published

ATL Fluid Art's RuleCMS component library (customer zero of the multi-tenant component library architecture)

Readme

@atlfluidart/rulecms-components

ATL Fluid Art's RuleCMS component library — the first customer library ("customer zero") built on the @rulecms/widget-react v16 multi-tenant component library contract, and the reference implementation for library authors.

What this is

A separately versioned React component library that RuleCMS widgets can reference per component via libraryId: "atlfluidart". It conforms to widget-react's ComponentLibraryModule contract structurally — no dependency on @rulecms/widget-react (a devDependency-only type test guarantees the shape).

Components

| Type | Description | |---|---| | coming-soon-message | Centered, padded announcement text (CMS-editable via content-text-3-resolutions; defaults to "New Experiences coming soon") |

Usage (consumer app)

import * as atlfluidartComponents from '@atlfluidart/rulecms-components';

<RuleCMSWidgetProvider
  token={token}
  libraries={{
    default: sourceComponents,          // @rulecms/source-components-react
    atlfluidart: atlfluidartComponents, // eager (SSR) — or a thunk to code-split
  }}
>

A widget config references a component from this library as:

{ "id": "col-1", "type": "coming-soon-message", "libraryId": "atlfluidart" }

Library-author conventions demonstrated here

  • manifest / components / editor top-level exports (module namespace IS the ComponentLibraryModule).
  • React/react-dom externalized (peer dependencies) — never bundled.
  • Kebab-case component type ids; CMS attributes use the -3-resolutions convention (content-text-3-resolutions, standard dimension and hide-component attributes).
  • Render surface (components) carries no editor-only configuration; the optional editor surface provides structured palette entries ({ id, icon, label } — the composer owns the card template) and attribute metadata for the RuleCMS composer.

Scripts

  • npm test — contract conformance + Node SSR render tests (including an end-to-end render through @rulecms/widget-react with the namespaced libraryId).
  • npm run lint — ESLint (flat config).
  • npm run typechecktsc --noEmit.
  • npm run build — rollup → dist/ (ESM + CJS + d.ts).
  • npm run version:patch|minor|major — bump package version (creates version commit + tag).
  • npm run release — local emergency publish only. Normal releases push a v* tag and let GitHub Actions publish.

Publishing

Quality gates before any version bump:

npm run test && npm run lint && npm run typecheck && npm run build

Bump the version (agent or maintainer):

# Patch (0.1.0 → 0.1.1) — bug fix, no API change
npm run version:patch

# Minor (0.1.0 → 0.2.0) — new component / backward-compatible feature
npm run version:minor

# Major (0.1.0 → 1.0.0) — breaking change
npm run version:major

Publish by pushing the version tag. GitHub Actions publishes via trusted publishing (.github/workflows/publish.yml). Do not run npm publish locally.

git push && git push --tags
npm view @atlfluidart/rulecms-components version

Cross-repo releases that also touch @rulecms/source-components-react / @rulecms/widget-react follow rulecms/__docs__/__RUNBOOKS__/RUNBOOK_rulecms-packages-upgrade-across-repos.md.