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

@hareru/cli

v0.4.1

Published

CLI for Hareru UI design system — add components, manage CSS imports

Downloads

51

Readme

@hareru/cli

CLI for Hareru UI — initialize projects, list components, inspect details, and generate CSS imports.

npm License: MIT

Quick Start

# Initialize project (auto-detects framework + CSS mode)
npx @hareru/cli init --write

# List all components
npx @hareru/cli list

# Get component details
npx @hareru/cli info Button

# Generate CSS imports for a component
npx @hareru/cli add Button

# Auto-append CSS imports to your stylesheet
npx @hareru/cli add Button --write

Or install globally:

npm install -g @hareru/cli
hareru list

Commands

hareru init

Initialize Hareru UI in your project. Auto-detects framework and CSS mode, generates a managed CSS block and hareru.json.

hareru init                          # Dry-run preview
hareru init --write                  # Apply changes
hareru init --write --mode tailwind  # Specify CSS mode
hareru init --write --force          # Overwrite existing config

Init options:

| Flag | Description | |------|-------------| | --mode <mode> | CSS mode: standalone, portable, tailwind (auto-detected if omitted) | | --css-file <path> | CSS file to write to (auto-detected if omitted) | | --framework <fw> | Framework: next, vite, remix, astro (auto-detected if omitted) | | --write | Apply changes (dry-run by default) | | --scope | Add styles/scope.css import | | --baseline | Add styles/baseline.css import | | --layer | Use layer-wrapped CSS variant | | --force | Overwrite existing config and managed block | | --json | JSON output |

hareru update

Change the CSS mode. Rewrites the managed block in your CSS file.

hareru update --mode portable          # Preview changes
hareru update --mode portable --write  # Apply changes
hareru update --mode tailwind --write  # Switch to Tailwind mode

| Flag | Description | |------|-------------| | --mode <mode> | New CSS mode: standalone, portable, tailwind | | --scope | Add styles/scope.css import | | --baseline | Add styles/baseline.css import | | --layer | Use layer-wrapped CSS variant | | --write | Apply changes (diff preview by default) | | --json | JSON output |

hareru list

List all components grouped by category.

hareru list
hareru list --group form    # Filter by group
hareru list --json          # JSON output

hareru info <name>

Show details for a component or task bundle. Output includes variants, props, states, accessibility notes, usage examples, and Structure (slot tree for compound components) when available.

hareru info Button          # Component details
hareru info agent-chat-shell  # Bundle details

hareru add <name>

Generate CSS import statements for a component or bundle.

hareru add Dialog
hareru add Dialog --mode tailwind
hareru add Dialog --mode per-component
hareru add agent-chat-shell --write

CSS Modes:

| Mode | Description | |------|-------------| | standalone | All-in-one bundle (styles.css) | | portable | Tokens + component bundle, no reset | | tailwind | Cascade Layers for Tailwind v4 coexistence | | per-component | Individual CSS files for minimal bundle |

Options:

| Flag | Description | |------|-------------| | --mode <mode> | CSS mode (defaults to per-component if omitted) | | --write | Append imports to your CSS entry file | | --css-file <path> | Target CSS file (auto-detected if omitted) | | --layer | Use @layer wrapped variants | | --scope | Include .hui-root scope helper | | --baseline | Include minimal CSS reset | | --force | Skip safety checks | | --json | JSON output |

Auto-Detection

The CLI automatically detects:

  • CSS entry file — Searches 7 common paths (globals.css, index.css, etc.)
  • Package manager — pnpm, npm, yarn, bun (monorepo-aware)

CSS mode defaults to per-component when --mode is not specified.

Links

License

MIT — Copyright (c) 2026 MUSUBI Inc.