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

@keyu-tech/keyu-ui

v1.0.0

Published

Component library for the Circuit direction of the Keyu design system.

Readme

Keyu UI

Component library for the Circuit direction of the Keyu design system — re-skinned shadcn/ui primitives in black and gold, bilingual-first (EN / AR / KU).

Live docs: https://keyu-tech.github.io/keyu-ui/ Design system: https://keyu-tech.github.io/keyu-ui/design-system.html


Install

Two equally supported flows.

As an npm package

npm install @keyu-tech/keyu-ui
# or
yarn add @keyu-tech/keyu-ui
# or
pnpm add @keyu-tech/keyu-ui
import { Button, Dialog, DialogContent, DialogTitle } from "@keyu-tech/keyu-ui";
import "@keyu-tech/keyu-ui/tokens.css";
import "@keyu-tech/keyu-ui/base.css";   // optional — global resets
import "@keyu-tech/keyu-ui/shadcn.css"; // component styles

Via the shadcn CLI

The repo publishes a shadcn-compatible registry. Init against it once, then add components individually:

pnpm dlx shadcn@latest init -t https://keyu-tech.github.io/keyu-ui/registry.json
pnpm dlx shadcn@latest add button input dialog

The CLI copies the .tsx source into your project's components/ui/ directory and adds the relevant Radix packages to your package.json.

What ships today

The library implements the foundation slice:

  • Form / display: Button, Input, Textarea, Label, Badge, Card
  • Overlay / behaviour (Radix-backed): Dialog, Popover, DropdownMenu, Tabs

The remaining shadcn primitives are themed in CSS already (shadcn.css covers accordion, calendar, command, OTP, menubar, etc.) but don't yet have React wrappers. Adding them follows the established pattern; PRs welcome.

What's in this repo

| Path | Purpose | |---|---| | tokens.css | Single source of truth — primitive + semantic tokens | | base.css | Optional element resets layered on the token sheet | | shadcn.css | The Circuit skin — class-driven, theme-aware | | keyu-ui/ | React component sources (TypeScript) | | registry.json | shadcn registry index | | r/ | Generated per-component registry entries (built by pnpm registry) | | index.html | Developer documentation site (deployed to /) | | design-system.html | Full design system reference (deployed to /design-system.html) | | tools/ | Prototyping helpers (e.g. tweaks-panel.jsx) — not part of @keyu-tech/keyu-ui | | .github/workflows/pages.yml | Auto-deploys to GitHub Pages on push to main | | .github/workflows/release.yml | Runs semantic-release on push to main — publishes to npm, tags, writes CHANGELOG.md |

Develop

pnpm install
pnpm typecheck   # tsc --noEmit
pnpm build       # tsup → dist/ (ESM + CJS + .d.ts)
pnpm registry    # rebuild r/*.json from registry.json
pnpm format      # prettier --write .

Releases

Releases are fully automated by semantic-release running in .github/workflows/release.yml. On every push to main it inspects the commits since the last tag and, if any are releasable, bumps the version, tags, writes CHANGELOG.md, publishes @keyu-tech/keyu-ui to npm, and cuts a GitHub Release.

Commit messages must follow the Conventional Commits format:

| Prefix | Effect | |---|---| | feat: … | minor bump (new feature) | | fix: …, perf: … | patch bump | | feat!: … or any commit with a BREAKING CHANGE: footer | major bump | | chore: …, docs: …, refactor: …, test: …, ci: …, style: … | no release |

Setup requirement: an NPM_TOKEN repository secret with publish rights to the @keyu-tech scope. The built-in GITHUB_TOKEN covers tags, the release, and the CHANGELOG.md commit.

Deployment

Push to main also triggers .github/workflows/pages.yml, which type-checks, builds, regenerates the registry, and publishes the docs + CSS + registry to GitHub Pages.

License

MIT © Keyu.tech, 2026.