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

inai-react-components

v2.3.0

Published

CLI for InAI UI component library — install components from a private registry into your React project

Readme

inai-react-components

CLI for the InAI UI component library. Installs components, blocks, and templates from a private registry into your React project following the shadcn/ui copy-paste philosophy.

Install

npx inai-react-components init

Commands

| Command | Description | |---|---| | inai-ui init [repo-url] | Initialize InAI UI in the current project (detects framework, writes components.json, copies tokens). | | inai-ui add [component] | Install a component/block/template. Flags: -a/--all, -f/--force, --dry-run, --skip-existing. Transitive registryDependencies are installed automatically. | | inai-ui sync | Pull the latest registry cache from the remote repository. | | inai-ui list | List all available components. Flag: -c/--category. | | inai-ui status | Report component health: HEALTHY / DRIFT / OUTDATED / MISSING. Flag: --json. | | inai-ui diff <component> | Unified LCS-based diff between the local component and the registry version. | | inai-ui update <component> | Update a component with a 3-way merge against the snapshot captured at install time. | | inai-ui theme create | Create a custom theme based on an existing one. | | inai-ui mcp | Start the MCP server so AI assistants can drive the CLI. | | inai-ui mcp init | Print the JSON config fragment for Claude Desktop / Cursor. |

Framework detection

inai-ui init auto-detects the host framework and picks a sensible CSS entry point:

| Framework | CSS entry point | |---|---| | Next.js (App Router) | app/globals.css | | Next.js (Pages Router) | styles/globals.css | | Vite | src/index.css | | Remix | app/styles/globals.css | | Astro | src/styles/globals.css | | TanStack Start | src/styles/app.css |

Snapshots & 3-way merge

Every inai-ui add captures an original-content snapshot at .inai-ui/snapshots/<name>.json. inai-ui update uses this snapshot as the common ancestor of a 3-way merge (local vs registry), so local edits survive upgrades. Overlapping edits produce standard git-style conflict markers (<<<<<<< / ======= / >>>>>>>) that you resolve in your editor.

inai-ui status uses the same snapshot hashes to report whether a component has drifted from its installed baseline.

MCP server

The CLI ships an MCP (Model Context Protocol) server so AI assistants (Claude Desktop, Cursor, any MCP-compatible host) can browse and install components on your behalf.

Register with Claude Desktop / Cursor

inai-ui mcp init

This prints a JSON fragment — drop it into your MCP host's mcpServers config:

{
  "mcpServers": {
    "inai-ui": {
      "command": "inai-ui",
      "args": ["mcp"]
    }
  }
}

Exposed tools

| Tool | Purpose | |---|---| | list_components | List the full registry. Optional category filter. | | view_component | Return the source of a single component (files wrapped in fenced blocks). | | add_component | Install a component and its transitive deps into the current project. | | diff_component | Unified diff between local and registry. | | update_component | Non-interactive update via 3-way merge. | | list_themes | Enumerate the 34 built-in themes with categories. | | project_status | JSON status report (HEALTHY / DRIFT / OUTDATED / MISSING per component). |

The server talks stdio — your MCP host spawns inai-ui mcp and communicates with it over stdin/stdout.