open-index/open-npm huggingface dataset:
npm package: @lumeweb/uppy-post-upload
Description: Plain and simple classic HTML multipart form uploads with Uppy, as well as uploads using the HTTP PUT method.
Author: Derrick Hammer
Latest version: 0.1.0

# @lumeweb/uppy-post-upload

Plain and simple classic HTML multipart form uploads with Uppy, as well as uploads using the HTTP PUT method.

## Features

- Supports multipart form uploads
- Supports HTTP PUT method uploads
- Seamless integration with Uppy
- Browser and Node.js support

## Installation

```bash
npm install @lumeweb/uppy-post-upload
```

```bash
pnpm add @lumeweb/uppy-post-upload
```

```bash
yarn add @lumeweb/uppy-post-upload
```

## Usage

```js
import Uppy from '@uppy/core';
import PostUpload from '@lumeweb/uppy-post-upload';

const uppy = new Uppy({
  debug: true,
  autoProceed: false,
});

uppy.use(PostUpload, {
  endpoint: 'https://your-upload-endpoint.com/upload',
  fieldName: 'files',
});
```

## Options

- `endpoint` (string, required): The upload endpoint URL
- `fieldName` (string): Form field name for files (default: `'files'`)
- `method` (string): HTTP method to use (`'POST'` or `'PUT'`, default: `'POST'`)

## License

MIT
npm package: @lumi-auth/cli
Description: CLI for lumi-auth
Latest version: 0.1.2

# lumi-cli

To install dependencies:

```bash
bun install
```

To run:

```bash
bun run index.ts
```

This project was created using `bun init` in bun v1.3.0. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime.
npm package: @lumia-ui/icons
Description: Icon registry utilities for Lumia DS
Latest version: 1.0.0

# @lumia-ui/icons

Icon registry utilities and the unified `<Icon>` React component for Lumia DS.

## Install

```bash
pnpm add @lumia-ui/icons
```

## Unified Icon Component

The `<Icon>` component provides a single API for all icons:

```tsx
import { Icon, IconSprite } from '@lumia-ui/icons';

// Add sprite once at app root
function App() {
  return (
    <>
      <IconSprite />
      <YourRoutes />
    </>
  );
}

// Use anywhere
<Icon name="info" />
<Icon name="check" size="lg" color="primary" />
<Icon name="alert" color="danger" title="Warning" />
```

### Props

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `name` | `string` | — | Icon name from registry |
| `size` | `'sm' \| 'md' \| 'lg' \| number` | `'md'` | Size preset or pixels |
| `color` | `'default' \| 'muted' \| 'primary' \| 'danger' \| string` | `'default'` | Color preset or CSS |
| `title` | `string` | — | Accessible title |

### Size Presets

- `sm` = 16px
- `md` = 24px (default)
- `lg` = 32px

### Color Presets

- `default` → text-foreground
- `muted` → text-muted-foreground
- `primary` → text-primary
- `danger` → text-destructive

### Accessibility

Icons support both decorative and informative semantics:

**Decorative icons** (default) are hidden from screen readers:
```tsx
<Icon name="check" />
// Output: <svg aria-hidden="true" focusable="false" />
```

**Informative icons** convey meaning via the `title` prop:
```tsx
<Icon name="alert" title="Warning: Action required" />
// Output: <svg role="img" aria-labelledby="icon-title-alert"><title>...</title>
```

Same pattern works for `SpriteIcon`:
```tsx
<SpriteIcon name="info" title="More information" />
```

## Available Icons

**Curated Lucide icons:** `home`, `user`, `users`, `settings`, `reports`, `add`, `edit`, `delete`, `filter`, `search`, `check`, `alert`, `info`

**Custom icons:** `sparkle`, `chat-bubble`

**Sprite icons (hot-path):** `chevron-down`, `chevron-up`, `check`, `add`, `edit`, `delete`, `info`, `alert`, `search`

## Registering Custom Icons

```tsx
import { registerIcon } from '@lumia-ui/icons';

const CustomBell = (props: React.SVGProps<SVGSVGElement>) => (
  <svg viewBox="0 0 24 24" {...props}>
    <path d="M12 2a7 7 0 00-7 7v3l-1.5 2H20.5L19 12V9a7 7 0 00-7-7Z" />
  </svg>
);

registerIcon('bell', CustomBell);
// Now use: <Icon name="bell" />
```

## Building Icons from SVG

Add SVG files to `packages/icons/svg/` and run:

```bash
pnpm build:icons
```

Generated components are exported from `@lumia-ui/icons` and auto-registered.

## Direct Import (Tree-Shakable)

```tsx
import { IconCheck, IconSparkle } from '@lumia-ui/icons';

<IconCheck className="text-green-500" />
```
npm package: @lumia-ui/runtime
Description: Runtime schema definitions for Lumia page rendering
Latest version: 0.1.0

# @lumia-ui/runtime

Runtime schema definitions and renderer for Lumia page rendering.

## Install

```bash
pnpm add @lumia-ui/runtime @lumia-ui/components @lumia-ui/forms @lumia-ui/layout
```

## Features

- **Page Schema**: Zod schemas for validating complete page configurations.
- **Renderer**: React components to render pages from schemas.
- **Resource Management**: Utilities for managing resource configurations.

## Usage

```tsx
import { ResourcePageRenderer } from '@lumia-ui/runtime';

// ...
<ResourcePageRenderer
  resource={resourceConfig}
  page={pageSchema}
  dataSources={data}
  screen="list"
/>
```
npm package: @lumia-ui/theme
Description: React ThemeProvider for applying Lumia token CSS variables
Latest version: 0.1.0

# @lumia-ui/theme

`ThemeProvider` and Tailwind preset for applying Lumia token CSS variables.

## Install

```bash
pnpm add @lumia-ui/theme @lumia-ui/tokens
```

## Wrap your app

```tsx
import { ThemeProvider } from '@lumia-ui/theme';

export function App({ children }: { children: React.ReactNode }) {
  // Defaults to "light" theme (sets data-theme="light")
  return <ThemeProvider>{children}</ThemeProvider>;
}
```

To switch themes, pass a string:

```tsx
<ThemeProvider theme="dark">
  {children}
</ThemeProvider>
```

By default variables write to `document.documentElement` with `data-theme` attribute. To scope them, pass a DOM node:

```tsx
const ref = useRef<HTMLDivElement>(null);

return (
  <div ref={ref}>
    <ThemeProvider theme="dark" target={ref.current}>
      {/* scoped content */}
    </ThemeProvider>
  </div>
);
```

### Legacy Support

You can still pass a theme object (e.g. `defaultTheme`), but using string names is recommended as it leverages static CSS variables.

## Tailwind preset/config helper

Expose Lumia tokens to Tailwind using the exported preset or config factory:

```js
// tailwind.config.js
import { createLumiaTailwindConfig, lumiaTailwindPreset } from '@lumia-ui/theme';

export default {
  presets: [lumiaTailwindPreset],
  // or: ...createLumiaTailwindConfig(),
};
```
npm package: @lumia-ui/tokens
Description: Design tokens and theme types for Lumia DS
Latest version: 1.0.0

# @lumia-ui/tokens

Theme tokens for Lumia DS with helpers to emit CSS variables.

> [!IMPORTANT]
> The single source of truth for tokens are the JSON files in `tokens/`.
> This package uses [Style Dictionary](https://amzn.github.io/style-dictionary/) to generate platform-specific assets.
>
> ## Token Structure
>
> - **Core Tokens** (`tokens/core/`): Raw value definitions (e.g., palettes like Zinc, Red).
> - **Semantic Tokens** (`tokens/semantic/`): Functional aliases referencing core tokens (e.g., `primary`, `destructive`).
>
> Do not edit `dist/` files directly.

## Install

```bash
pnpm add @lumia-ui/tokens
```

## Usage

```ts
import { defaultTheme, tokens, type ThemeTokens } from '@lumia-ui/tokens';

// Access tokens directly
const primaryColor = tokens.colors.primary; // e.g. #18181b
```

Since tokens are already built as CSS variables in `dist/css/variables.css`, you simply need to import that CSS file in your application root:

```ts
import '@lumia-ui/tokens/dist/css/variables.css';
```

## Token groups

- `colors`: `primary`, `secondary`, `background`, `foreground`, `border`, `muted`, `destructive`
- `typography`: `families` (`sans`, `mono`, `display`), `sizes` (`xs`–`2xl`), `weights` (`regular`, `medium`, `semibold`, `bold`)
- `radii`: `xs`, `sm`, `md`, `lg`, `pill`
- `spacing`: `xxs`, `xs`, `sm`, `md`, `lg`, `xl`, `2xl`
- `shadows`: `xs`, `sm`, `md`, `lg`, `inset`

### Naming notes vs Figma

- Figma “Surface” → `colors.background`
- Figma “Text” → `colors.foreground`
- Figma “Error” → `colors.destructive`