+
Skip to content
/ unui Public

unHQ / unui — a small, composable React + Tailwind UI system (tokens, preset, components, blocks) built on Radix + shadcn ideas.

License

Notifications You must be signed in to change notification settings

un-hq/unui

unuı — UnHQ UI Monorepo

CI License: MIT pnpm npm version size-limit TypeScript Conventional Commits PRs Welcome

A lightweight, token-driven React + Tailwind component system.


📦 Packages

  • @unhq/tokens — CSS variables for light/dark; the single source of truth.
  • @unhq/tailwind-preset — Tailwind config that maps tokens → utilities.
  • @unhq/ui — Headless-ish, token-first components.
  • @unhq/blocks — Higher-level compositions (optional, WIP).
  • apps/docs — Ladle stories for visual tests and theming controls.

⚡️ Quick start (consuming apps)

Install core packages:

pnpm add @unhq/ui @unhq/tailwind-preset @unhq/tokens

tailwind.config.ts

import type { Config } from "tailwindcss";
import preset from "@unhq/tailwind-preset";

export default {
  presets: [preset],
} satisfies Config;

globals.css

@import "@unhq/tokens/styles.css";
@tailwind base;
@tailwind components;
@tailwind utilities;

Then use components:

import { Button } from "@unhq/ui";

export function Example() {
  return <Button>Click me</Button>;
}

🎨 Theming contract

Tokens → Tailwind preset → components.
See docs/THEMING_CONTRACT.md.


🛠 Prerequisites

  • Node.js v18 or v20 (LTS recommended)
  • pnpm v10+
  • A GitHub account + SSH setup

🚀 Development

  • Run docs locally:

    pnpm -C apps/docs dev
  • Build all packages:

    pnpm -w build
  • Typecheck:

    pnpm -w typecheck

🔀 Branching model

  • Work should be done in feature branches.
  • Use descriptive branch names:
    • feat/button-secondary
    • fix/input-focus-ring
    • chore/size-limit

Open a PR into main when ready.


✅ CI

Every PR and push to main runs CI:

  • Typecheck
  • Build
  • Docs build (Ladle)
  • Size-limit guards
  • Publish dry-run

CI must be green before merging.


📝 Releasing

We use Changesets for versioning and releases.

For user-facing changes:

pnpm changeset      # choose bump + write summary
pnpm -w version     # update versions & changelogs
git push --follow-tags
pnpm -w publish     # publish to npm

🤝 Contributing

See CONTRIBUTING.md for full guidelines.


📜 License

MIT © UnHQ

About

unHQ / unui — a small, composable React + Tailwind UI system (tokens, preset, components, blocks) built on Radix + shadcn ideas.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 3

  •  
  •  
  •  
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载