open-index/open-npm huggingface dataset:
npm package: @lit-protocol/wrapped-keys-bc
Description: This submodule is used for Wrapped Keys which allows you to import any existing keys. You can also export these keys to the user. These keys are encrypted and stored in a DynamoDB instance managed by Lit. You can use functions to sign a message/transactio
Latest version: 6.5.3

# Quick Start

This submodule is used for Wrapped Keys which allows you to import any existing keys. You can also export these keys to the user. These keys are encrypted and stored in a DynamoDB instance managed by Lit. You can use functions to sign a message/transaction within a Lit Action as even broadcast it to the required blockchain.

### node.js / browser

```
yarn add @lit-protocol/wrapped-keys
yarn add @lit-protocol/wrapped-keys-bc # version with lit actions code in the bundle
```

### Vanilla JS (UMD)

```js
<script src="https://cdn.jsdelivr.net/npm/@lit-protocol/wrapped-keys-vanilla/wrapped-keys.js"></script>
<script>
  console.log(LitJsSdk_wrappedKeys);
</script>
```

### Lit Actions Code

This package outputs two bundles. The light-one one that uses IPFS CIDs to indicate the Lit Actions involved and another one that includes their code and sends that to the nodes instead of the CID.
npm package: @lit-protocol/wrapped-keys-lit-actions
Description: This submodule is used with the Wrapped Keys package, to include LIT action source code in your deployed frontend bundle instead of relying on LIT nodes to fetch the LIT action source code using internally defined IPFS CIDs; this can provide a performance
Latest version: 8.1.1

# Quick Start

This submodule is used with the Wrapped Keys package, to include LIT action source code in your deployed frontend bundle instead of relying on LIT nodes to fetch the LIT action source code using internally defined IPFS CIDs; this can provide a performance benefit under certain circumstances due to the variable nature of IPFS performance.

### Usage

1. Install the wrapped keys LIT actions package as a dependency

```
yarn add @lit-protocol/wrapped-keys-lit-actions
```

2. In your app, provide the litActionRepository or individual lit actions to the wrapped keys package. This only needs to be done once, before you use the `api` methods exposed by wrapped-keys.

```javascript
// import all lit actions code
import { litActionRepository } from '@lit-protocol/wrapped-keys-lit-actions';
// or import individual lit actions
import { generateEncryptedEthereumPrivateKey } from '@lit-protocol/wrapped-keys-lit-actions';
import { config, api } from '@lit-protocol/wrapped-keys';

// set the litActionRepository to set all lit actions
config.setLitActionsCode({ litActionRepository });
// or set individual lit actions
config.setLitActionsCode({
  generateEncryptedKey: {
    evm: generateEncryptedEthereumPrivateKey.code,
  },
});

// Now this call will use the lit action code from the litActionRepository instead of making nodes fetch it from IPFS
api.generatePrivateKey(/* params */);
```
npm package: @lit-ui/button
Description: Accessible button component built with Lit and Tailwind CSS
Latest version: 1.0.0

# @lit-ui/button

Accessible button component built with Lit and Tailwind CSS.

## Installation

```bash
npm install @lit-ui/button @lit-ui/core
```

## Quick Start

```html
<script type="module">
  import '@lit-ui/button';
</script>

<lui-button variant="default">Click me</lui-button>
<lui-button variant="primary">Primary</lui-button>
<lui-button variant="destructive">Delete</lui-button>
```

## Variants

- `default` - Standard button styling
- `primary` - Primary action emphasis
- `secondary` - Secondary action styling
- `outline` - Outlined button
- `ghost` - Minimal button styling
- `destructive` - Destructive/danger actions
- `link` - Link-styled button

## Sizes

- `sm` - Small button
- `default` - Default size
- `lg` - Large button
- `icon` - Icon-only button

## Features

- **Form Participation**: Works with native HTML forms
- **Loading State**: Built-in loading spinner
- **Icon Support**: Left and right icon slots
- **SSR Compatible**: Works with server-side rendering

## Documentation

Full documentation: [https://lit-ui.dev/components/button](https://lit-ui.dev/components/button)

## License

MIT
npm package: @lit-ui/cli
Description: Add lit-ui components to your project
Latest version: 0.1.0

# lit-ui

CLI for adding lit-ui components to your project.

## Installation

```bash
npx lit-ui init
```

## Commands

### Initialize Project

```bash
npx lit-ui init
```

Sets up lit-ui in your project with choice of:
- **copy-source**: Copy component source files (full ownership)
- **npm**: Install packages from npm (dependency management)

### Add Components

```bash
npx lit-ui add button
npx lit-ui add dialog
```

### List Components

```bash
npx lit-ui list
```

### Migrate to NPM Mode

```bash
npx lit-ui migrate
```

Convert from copy-source to npm package mode.

## Modes

### Copy-Source Mode (default)
Components are copied to your project. You own the code and can modify freely.

### NPM Mode
Components installed as npm packages. Receive updates via npm.

## Documentation

Full documentation: [https://lit-ui.dev](https://lit-ui.dev)

## License

MIT
npm package: @lit-ui/core
Description: SSR-aware base component and utilities for Lit web components with Tailwind styling
Latest version: 1.0.0

# @lit-ui/core

SSR-aware base component and utilities for Lit web components with Tailwind styling.

## Installation

```bash
npm install @lit-ui/core
```

## Quick Start

Extend `TailwindElement` for components that use Tailwind CSS in Shadow DOM:

```typescript
import { TailwindElement } from '@lit-ui/core';
import { html, css } from 'lit';
import { customElement } from 'lit/decorators.js';

@customElement('my-component')
export class MyComponent extends TailwindElement {
  render() {
    return html`
      <div class="p-4 bg-primary text-primary-foreground rounded">
        Hello World
      </div>
    `;
  }
}
```

## Features

- **SSR Compatible**: Automatic inline styles for server-side rendering
- **Tailwind Integration**: Constructable stylesheets for Shadow DOM
- **Design Tokens**: Access tokens via `@lit-ui/core/tokens`
- **FOUC Prevention**: Import `@lit-ui/core/fouc.css` for flash-free loading

## Documentation

Full documentation: [https://lit-ui.dev](https://lit-ui.dev)

## License

MIT
npm package: @lit-ui/dialog
Description: Accessible dialog/modal component built with Lit and Tailwind CSS
Latest version: 1.0.0

# @lit-ui/dialog

Accessible dialog/modal component built with Lit and Tailwind CSS.

## Installation

```bash
npm install @lit-ui/dialog @lit-ui/core
```

## Quick Start

```html
<script type="module">
  import '@lit-ui/dialog';
</script>

<lui-dialog id="my-dialog">
  <span slot="title">Dialog Title</span>
  <p>Dialog content goes here.</p>
  <div slot="footer">
    <lui-button variant="outline" onclick="document.getElementById('my-dialog').close()">
      Cancel
    </lui-button>
    <lui-button variant="primary">Confirm</lui-button>
  </div>
</lui-dialog>

<lui-button onclick="document.getElementById('my-dialog').showModal()">
  Open Dialog
</lui-button>
```

## Features

- **Focus Trap**: Automatic focus management within dialog
- **Keyboard Navigation**: Escape to close, Tab cycling
- **ARIA Support**: Proper accessibility attributes
- **Animations**: Smooth open/close transitions
- **Nested Dialogs**: Support for dialog stacking
- **SSR Compatible**: Works with server-side rendering

## Documentation

Full documentation: [https://lit-ui.dev/components/dialog](https://lit-ui.dev/components/dialog)

## License

MIT
npm package: @lit-ui/ssr
Description: Server-side rendering utilities for @lit-ui components
Latest version: 1.0.0

# @lit-ui/ssr

Server-side rendering utilities for @lit-ui components.

## Installation

```bash
npm install @lit-ui/ssr @lit-labs/ssr
```

## Quick Start

### Server-Side Rendering

```typescript
import { renderToString } from '@lit-ui/ssr';
import '@lit-ui/button';

const html = await renderToString('<lui-button>Click me</lui-button>');
// Returns HTML with Declarative Shadow DOM
```

### Client-Side Hydration

Import hydration support before any Lit components:

```typescript
// Must be first import!
import '@lit-ui/ssr/hydration';

// Then import components
import '@lit-ui/button';
import '@lit-ui/dialog';
```

## Server Detection

```typescript
import { isServer } from '@lit-ui/ssr';

if (isServer) {
  // Server-only code
} else {
  // Client-only code
}
```

## Framework Integration

See framework-specific examples:
- [Next.js](https://github.com/user/lit-ui/tree/main/examples/nextjs)
- [Astro](https://github.com/user/lit-ui/tree/main/examples/astro)
- [Express](https://github.com/user/lit-ui/tree/main/examples/express)

## Documentation

Full documentation: [https://lit-ui.dev](https://lit-ui.dev)

## License

MIT
npm package: @lit-web3/node-assert
Description: - Ensure `process` in globalThis - Resolve `import 'assert'` or `require('assert')` in browser
Latest version: 0.1.1

# Shim `'assert'` to browser

- Ensure `process` in globalThis
- Resolve `import 'assert'` or `require('assert')` in browser

## Usage

Import directly:

```javascript
import assert from '@lit-web3/node-assert'
```

Or declare resolutions in your root package.json.

```javascript
{
	"name": "your-app",
	"resolutions": {
		"assert": "npm:@lit-web3/node-assert"
	}
}
```
npm package: @lit-web3/node-buffer
Description: - Ensure `process` in globalThis - Resolve `globalThis.Buffer` or `import 'buffer'` or `require('buffer')` in browser
Latest version: 0.1.1

# Shim `'buffer'` to browser

- Ensure `process` in globalThis
- Resolve `globalThis.Buffer` or `import 'buffer'` or `require('buffer')` in browser

## Usage

Import directly:

```javascript
import { Buffer } from '@lit-web3/node-buffer'
```

Or declare resolutions in your root package.json.

```javascript
{
  "name": "your-app",
  "resolutions": {
    "buffer": "npm:@lit-web3/node-buffer"
  }
}
```
npm package: @lit-web3/node-shims
Description: ## Usage
Latest version: 0.1.1

# Shim some Node.js API to browser

## Usage

Import directly:

```javascript
import '@lit-web3/node-shims'
```

And declare resolutions in your root package.json.

```json
{
	"resolutions": {
		"assert": "npm:@lit-web3/node-assert",
		"buffer": "npm:@lit-web3/node-buffer",
		"stream": "npm:@lit-web3/node-stream",
		"util": "npm:@lit-web3/node-util"
	}
}
```
npm package: @lit-web3/node-stream
Description: - Ensure `process`, `global` in globalThis - Resolve `import 'stream'` or `require('stream')` in browser
Latest version: 0.1.1

# Shim `'stream'` to browser

- Ensure `process`, `global` in globalThis
- Resolve `import 'stream'` or `require('stream')` in browser

## Usage

Import directly:

```javascript
import { Stream } from '@lit-web3/node-stream'
```

Declare resolutions in your root package.json.

```json
{
	"resolutions": {
		"stream": "npm:@lit-web3/node-stream"
	}
}
```
npm package: @lit-web3/node-util
Description: - Ensure `process` in globalThis - Resolve `import 'util'` or `require('util')` in browser
Latest version: 0.1.2

# Shim `'util'` to browser

- Ensure `process` in globalThis
- Resolve `import 'util'` or `require('util')` in browser

## Usage

Import directly:

```javascript
import util from '@lit-web3/node-util'
```

Or declare resolutions in your root package.json.

```javascript
{
	"name": "your-app",
	"resolutions": {
		"util": "npm:@lit-web3/node-util"
	}
}
```