open-index/open-npm huggingface dataset:
npm package: @hemia/lume
Description: CLI for adding Lume UI components to your project. Inspired by shadcn/ui.
Latest version: 0.0.11

# @hemia/lume

CLI for adding Lume UI components to your project. Inspired by shadcn/ui.

## Quick start

```bash
bunx @hemia/lume@latest init
bunx @hemia/lume@latest add button
```

## Commands

### `init`

Initialize Lume in your project:

```bash
bunx @hemia/lume@latest init

# With template
bunx @hemia/lume@latest init -t nuxt

# With preset
bunx @hemia/lume@latest init --preset dashboard
```

Creates `lume.config.json` and sets up Tailwind configuration.

### `add`

Add components to your project:

```bash
# Single component
bunx @hemia/lume@latest add button

# Multiple components
bunx @hemia/lume@latest add button card badge

# All components
bunx @hemia/lume@latest add --all

# Skip confirmation
bunx @hemia/lume@latest add button -y
```

Components are **copied to your project** (not installed from npm).

### `list`

List available components:

```bash
bunx @hemia/lume@latest list

# For specific framework
bunx @hemia/lume@latest list --framework react
```

## How it works

1. Components are stored in `@hemia/lume-registry`
2. CLI detects your framework from `lume.config.json`
3. Copies component files to `src/components/ui/`
4. Installs required dependencies automatically

## Framework support

- ✅ **Vue 3** — Full support
- 🚧 **React** — Coming soon
- 🚧 **Svelte** — Coming soon
- 🚧 **Astro** — Coming soon

## Configuration

The `lume.config.json` file:

```json
{
  "framework": "vue",
  "style": "default",
  "template": "vite-vue",
  "tailwind": {
    "config": "tailwind.config.ts",
    "css": "src/assets/globals.css"
  },
  "aliases": {
    "components": "@/components",
    "utils": "@/lib/utils"
  }
}
```

## Templates

- `vite-vue` — Vite + Vue 3
- `nuxt` — Nuxt 3
- `next` — Next.js (coming soon)

## Presets

- `dashboard` — Button, Card, Input, Select, Table, Chart
- `auth` — Button, Input, Card, Form
- `landing` — Button, Card, Hero, Features, CTA

## License

MIT
npm package: @hemia/lume-core
Description: Framework-agnostic runtime utilities and design tokens for the Lume UI system.
Latest version: 0.0.2

# @hemia/lume-core

Framework-agnostic runtime utilities and design tokens for the Lume UI system.

## What's included

- **`cn()`** — Smart Tailwind class merger
- **`cva()`** — Type-safe component variants
- **Tokens** — Colors, radius, theme values

## Installation

Install via framework adapter (recommended):

```bash
npm install @hemia/lume-vue
```

Or directly:

```bash
npm install @hemia/lume-core
```

## Usage

```ts
import { cn, cva, colors, radius } from "@hemia/lume-core"

// Merge classes
cn("px-2 py-1", "px-4") // → "py-1 px-4"

// Define variants
const button = cva("base", {
  variants: {
    variant: { default: "bg-primary", outline: "border" }
  }
})
```

## Framework Adapters

- **[@hemia/lume-vue](../vue)** — Vue 3
- **@hemia/lume-react** — React (coming soon)
- **@hemia/lume-svelte** — Svelte (coming soon)

**Note:** In projects, import from the framework adapter (`@hemia/lume-vue`) not directly from core.

## License

MIT
npm package: @hemia/lume-registry
Description: Component templates registry for the Lume UI system. Contains source code for all Lume components organized by framework.
Latest version: 0.0.2

# @hemia/lume-registry

Component templates registry for the Lume UI system. Contains source code for all Lume components organized by framework.

## What is this?

This package stores the component templates that the Lume CLI copies into user projects. **Users don't install this directly** — it's consumed by the `@hemia/lume` CLI.

## Structure

```
registry/
├── vue/
│   ├── button/
│   │   ├── button.vue
│   │   └── meta.json
│   └── card/
│       ├── card.vue
│       └── meta.json
└── react/  (coming soon)
```

## How it works

When a user runs:

```bash
bunx @hemia/lume@latest add button
```

The CLI:
1. Reads the framework from `lume.config.json`
2. Resolves `@hemia/lume-registry` package location
3. Copies files from `registry/{framework}/{component}/` to the user's project
4. Installs dependencies listed in `meta.json`

## Usage

This package is dependency of `@hemia/lume` CLI. It's not meant to be imported in user code.

## License

MIT
npm package: @hemia/lume-vue
Description: Vue 3 adapter for Lume UI system. Provides runtime utilities and acts as the primary dependency for Vue projects using Lume components.
Latest version: 0.0.2

# @hemia/lume-vue

Vue 3 adapter for Lume UI system. Provides runtime utilities and acts as the primary dependency for Vue projects using Lume components.

## Installation

```bash
npm install @hemia/lume-vue
```

## What's included

Re-exports everything from `@hemia/lume-core`:

- **`cn()`** — Smart Tailwind class merger
- **`cva()` & `VariantProps`** — Type-safe component variants
- **Tokens** — Colors, radius, theme values

Plus Vue-specific utilities.

## Usage in Vue components

```vue
<script setup lang="ts">
import { cn, cva, type VariantProps } from "@hemia/lume-vue"

const buttonVariants = cva('rounded px-4 py-2', {
  variants: {
    variant: {
      default: 'bg-primary text-white',
      outline: 'border border-primary'
    }
  },
  defaultVariants: { variant: 'default' }
})

type ButtonVariants = VariantProps<typeof buttonVariants>

const props = defineProps<{
  variant?: ButtonVariants['variant']
  class?: string
}>()
</script>

<template>
  <button :class="cn(buttonVariants({ variant }), props.class)">
    <slot />
  </button>
</template>
```

## Adding components

Use the Lume CLI to add components to your project:

```bash
bunx @hemia/lume@latest init    # Initialize config
bunx @hemia/lume@latest add button card  # Add components
```

Components are copied to your project (not imported from node_modules).

## Note

Always import from `@hemia/lume-vue` in Vue projects, not from `@hemia/lume-core` directly.

## License

MIT