open-index/open-npm huggingface dataset:
npm package: @seed-design/vite-plugin
Description: Seed Design의 테마를 Vite 프로젝트에 적용하기 위한 플러그인입니다.
Author: Asher
Latest version: 1.1.1

# @seed-design/vite-plugin

Seed Design의 테마를 Vite 프로젝트에 적용하기 위한 플러그인입니다.

## 설치

```sh
yarn add @seed-design/vite-plugin
```

```sh
npm install @seed-design/vite-plugin
```

## 사용 방법

```ts
// vite.config.ts
import { defineConfig } from "vite";
import { seedDesignPlugin } from "@seed-design/vite-plugin";

export default defineConfig({
  plugins: [
    // ...다른 플러그인
    seedDesignPlugin(),
  ],
});
```

## 옵션

```ts
interface Options {
  /**
   * 사용할 컬러 모드
   * "system": 사용자 시스템 환경설정에 따라 컬러 모드 결정
   * "light-only": 항상 라이트 모드 사용
   * "dark-only": 항상 다크 모드 사용
   * @default "system"
   */
  colorMode?: "system" | "light-only" | "dark-only";

  /**
   * color-scheme 메타 태그 주입 여부
   * @default true
   */
  injectColorSchemeTag?: boolean;
}
```

### 예시

```ts
// vite.config.ts
import { defineConfig } from "vite";
import { seedDesignPlugin } from "@seed-design/vite-plugin";

export default defineConfig({
  plugins: [
    seedDesignPlugin({
      colorMode: "light-only",
      injectColorSchemeTag: true,
    }),
  ],
});
```

## 기능

이 플러그인은 다음과 같은 기능을 제공합니다:

1. Seed Design CSS 테마 스크립트를 자동으로 HTML에 주입합니다.
2. 선택적으로 color-scheme 메타 태그를 추가하여 브라우저에 컬러 스킴을 알립니다.
3. Recipe 주석 (`// @recipe(seed): 컴포넌트명`)이 있는 파일에 자동으로 CSS 파일을 임포트합니다.

## 라이센스

MIT
npm package: @seed-design/vue2-icon
Description: ### Install
Author: junghyeonsu
Latest version: 0.7.3
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @seed-design/vue2-icon

### Install

```bash
# Vue2
npm install @seed-design/vue2-icon
yarn add @seed-design/vue2-icon
```

### Usage

```jsx
import { IconName1, IconName2 } from "@seed-design/vue2-icon";

// SVG props 사용 가능
<IconName1 size={20} />;
```

프로젝트에서 사용하고 있는 번들러가 tree-shaking을 지원한다면, 사용하지 않는 아이콘은 번들에 포함되지 않습니다.
그게 아니라면 `Deep Import`를 사용하여 필요한 아이콘만 가져오는 것을 권장합니다.

```jsx
import IconName1 from "@seed-design/vue2-icon/IconName1";
```
npm package: @seed-design/vue3-icon
Description: ### Install
Author: junghyeonsu
Latest version: 0.7.3
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @seed-design/vue3-icon

### Install

```bash
# React
npm install @seed-design/vue3-icon
yarn add @seed-design/vue3-icon
```

### Usage

```jsx
import { IconName1, IconName2 } from "@seed-design/vue3-icon";

// SVG props 사용 가능
<IconName1 size={20} />;
```

프로젝트에서 사용하고 있는 번들러가 tree-shaking을 지원한다면, 사용하지 않는 아이콘은 번들에 포함되지 않습니다.
그게 아니라면 `Deep Import`를 사용하여 필요한 아이콘만 가져오는 것을 권장합니다.

```jsx
import IconName1 from "@seed-design/vue3-icon/IconName1";
```
npm package: @seed-design/webpack-plugin
Description: Seed Design의 테마를 Webpack 또는 Rspack 프로젝트에 적용하기 위한 플러그인입니다.
Author: Asher
Latest version: 1.1.0

# @seed-design/webpack-plugin

Seed Design의 테마를 Webpack 또는 Rspack 프로젝트에 적용하기 위한 플러그인입니다.

## 설치

```sh
yarn add @seed-design/webpack-plugin
```

```sh
npm install @seed-design/webpack-plugin
```

## 사용 방법

### Webpack

```js
// webpack.config.js
const { SeedDesignPlugin } = require('@seed-design/webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
  // webpack 설정...
  plugins: [
    new HtmlWebpackPlugin(), // HTML에 주입하기 위해 필요
    new SeedDesignPlugin(),
  ],
};
```

### Rspack

```js
// rspack.config.js
const { SeedDesignPlugin } = require('@seed-design/webpack-plugin');

module.exports = {
  // rspack 설정...
  plugins: [
    new SeedDesignPlugin(),
  ],
};
```

## 옵션

```ts
interface Options {
  /**
   * 사용할 컬러 모드
   * "system": 사용자 시스템 환경설정에 따라 컬러 모드 결정
   * "light-only": 항상 라이트 모드 사용
   * "dark-only": 항상 다크 모드 사용
   * @default "system"
   */
  colorMode?: "system" | "light-only" | "dark-only";

  /**
   * color-scheme 메타 태그 주입 여부
   * @default true
   */
  injectColorSchemeTag?: boolean;
}
```

### 예시

```js
const { SeedDesignPlugin } = require('@seed-design/webpack-plugin');

module.exports = {
  // webpack/rspack 설정...
  plugins: [
    new SeedDesignPlugin({
      colorMode: 'light-only',
      injectColorSchemeTag: true,
    }),
  ],
};
```

## 기능

이 플러그인은 다음과 같은 기능을 제공합니다:

1. Seed Design CSS 테마 스크립트를 자동으로 HTML에 주입합니다.
2. 선택적으로 color-scheme 메타 태그를 추가하여 브라우저에 컬러 스킴을 알립니다.
3. Recipe 주석 (`// @recipe(seed): 컴포넌트명`)이 있는 파일에 자동으로 CSS 파일을 임포트합니다.
4. Webpack과 Rspack 모두 지원합니다.

## 라이센스

MIT
npm package: @seed-drill/rutherford
Description: Rutherford onboarding system for Cordelia - conversational user profile creation
Author: Seed Drill
Latest version: 1.0.2

# Rutherford

The Rutherford onboarding system for Cordelia - a conversational user profile creation experience.

## Overview

Rutherford is the guitar-wielding guide who helps new Cordelia users create their persistent memory profiles through a conversational flow. Named with a nod to Robert Fripp and King Crimson, Rutherford makes the onboarding process feel like a jam session rather than a form-filling exercise.

## What's Included

- **Frontend Components**: Conversational UI with step-based flow, countdown timers, and interactive inputs
- **Backend Handler**: Profile creation endpoint with validation and encryption support
- **Schema Definitions**: TypeScript schemas for L1 Hot Context using Zod

## Installation

```bash
npm install @seed-drill/rutherford
```

## Usage

### Backend (Express.js)

```typescript
import express from 'express';
import { createSignupHandler } from '@seed-drill/rutherford/backend';
import { L1HotContextSchema } from '@seed-drill/rutherford/schema';

const app = express();

// Add the signup route
app.post('/api/signup', createSignupHandler({
  storage: yourStorageProvider,
  crypto: yourCryptoProvider,
  sessions: yourSessionStore,
}));
```

### Frontend (HTML)

```html
<!DOCTYPE html>
<html>
<head>
  <link rel="stylesheet" href="path/to/rutherford/styles.css">
</head>
<body>
  <div id="genesis-container"></div>
  <script type="module" src="path/to/rutherford/genesis.js"></script>
</body>
</html>
```

Or use the complete HTML template:

```typescript
import { getGenesisHTML } from '@seed-drill/rutherford/frontend';

app.get('/genesis', (req, res) => {
  res.send(getGenesisHTML());
});
```

## Features

- **Conversational Flow**: 17-step guided questionnaire with Rutherford as the host
- **Multiple Setup Modes**: Genesis (full onboarding), Upload (existing profile), or Bare (minimal account)
- **Smart Inputs**: Different input types - select, multiselect, tags, and text
- **Countdown Timers**: 60-second timeouts per question with auto-skip defaults
- **Profile Generation**: Creates validated L1 Hot Context with identity, preferences, and delegation rules
- **Encryption Support**: Optional AES-256-GCM encryption for sensitive data
- **Session Linking**: Integrates with session management for authenticated users

## Profile Data Collected

- **Identity**: Name, GitHub ID, organization, roles
- **Style**: Working preferences, planning mode, verbosity
- **References**: Formative books/works, inspirational figures
- **Preferences**: Emoji usage, planning mode, feedback style

## License

MIT
npm package: @seed-fe/event-channel
Description: A powerful event channel for modern web development
Author: xianghongai
Latest version: 1.0.0

# @seed-fe/event-channel

一个基于 EventEmitter2 的事件通道实现，提供受保护事件机制，确保关键事件监听器不被意外移除。

## 安装

```bash
# 使用 npm
npm install @seed-fe/event-channel

# 使用 yarn
yarn add @seed-fe/event-channel

# 使用 pnpm (推荐)
pnpm add @seed-fe/event-channel
```

## 基本用法

### 创建事件通道

```typescript
import { createEventChannel } from '@seed-fe/event-channel';

// 创建事件通道实例
const eventChannel = createEventChannel();
```

### 基本的事件监听和触发

```typescript
import eventChannel from '@seed-fe/event-channel';

// 添加事件监听器
eventChannel.on('user-login', (userData) => {
  console.log('用户登录:', userData);
});

// 添加一次性事件监听器
eventChannel.once('app-init', () => {
  console.log('应用初始化完成，此监听器只会触发一次');
});

// 触发事件
eventChannel.emit('user-login', { id: 1, name: 'Alice' });

// 移除事件监听器
const handler = () => console.log('处理事件');
eventChannel.on('some-event', handler);
eventChannel.off('some-event', handler); // 移除特定监听器
eventChannel.off('some-event'); // 移除该事件的所有监听器
```

### 使用受保护事件

受保护事件使用 Symbol 作为键，确保关键事件监听器不会被意外移除。

```typescript
import { registerProtectedEvent, unregisterProtectedEvent } from '@seed-fe/event-channel';

// 注册受保护事件
const myEvent = registerProtectedEvent('MY_EVENT', { // 将使用 Symbol('MY_EVENT') 作为键
  description: '重要系统事件'
});

// 添加监听器
eventChannel.on(myEvent, (data) => {
  console.log('处理受保护事件:', data);
});

// 尝试移除监听器 - 无效操作
eventChannel.off(myEvent); // 不会真正移除监听器

// 触发事件
eventChannel.emit(myEvent, { important: 'data' });

// 取消保护
unregisterProtectedEvent(myEvent);

// 现在可以移除监听器
eventChannel.off(myEvent); // 成功移除
```

## API 参考

### 核心功能

- `createEventChannel()`: 创建一个新的事件通道实例
- `default`: 默认的事件通道实例

### 受保护事件管理

- `registerProtectedEvent(name: string, meta?: ProtectedEventMeta)`: 注册受保护事件
- `unregisterProtectedEvent(sym: symbol)`: 取消事件保护
- `isProtectedEvent(sym: symbol)`: 检查是否为受保护事件
- `getProtectedEventMeta(sym: symbol)`: 获取受保护事件的元数据
- `listProtectedEvents()`: 获取所有受保护事件列表

## 许可证

MIT
npm package: @seed-fe/global
Description: A library that exposes variables to the global scope.
Author: xianghongai
Latest version: 1.0.1

# @seed-fe/global

向全局作用域暴露变量。

## 安装

```bash
# 使用 npm
npm install @seed-fe/global

# 使用 yarn
yarn add @seed-fe/global

# 使用 pnpm (推荐)
pnpm add @seed-fe/global
```

## 使用

```ts
import global from '@seed-fe/global';

// 设置全局变量
global.set('myApp', 'config', { apiUrl: 'https://api.example.com' });

// 获取全局变量
const config = global.get('myApp', 'config');
// 或直接访问 myApp.config 对象

// 检查全局变量是否存在
if (global.has('myApp', 'config')) {
  // 存在
}

// 删除全局变量
global.remove('myApp', 'config');

// 删除整个命名空间
global.remove('myApp');

// 一次性设置多个变量
global.setMany('myApp', {
  version: '1.0.0',
  debug: true,
  config: { apiUrl: 'https://api.example.com' }
});

// 获取命名空间下的所有变量
const allValues = global.getAll('myApp');
// allValues = { version: '1.0.0', debug: true, config: { apiUrl: 'https://api.example.com' } }
```

## 特性

### 保护机制

该库使用代理机制保护全局变量，防止直接修改：

```ts
// 设置全局变量
global.set('myApp', 'version', '1.0.0');

// 尝试直接修改（会被阻止并显示警告）
window.myApp.version = '2.0.0'; // 不会生效

// 正确的修改方式
global.set('myApp', 'version', '2.0.0');
```

这种保护机制确保了全局变量只能通过库提供的API进行修改，避免了意外覆盖或修改的风险。

## API

### set(scope, key, value)

设置全局变量。

- `scope`: 命名空间，字符串类型
- `key`: 变量名，字符串类型
- `value`: 变量值，任意类型
- 返回: 设置的值

```ts
global.set('myApp', 'config', { apiUrl: 'https://api.example.com' });
```

### setMany(scope, values)

一次性设置多个全局变量。

- `scope`: 命名空间，字符串类型
- `values`: 包含多个键值对的对象
- 返回: 设置的对象

```ts
global.setMany('myApp', {
  version: '1.0.0',
  debug: true,
  config: { apiUrl: 'https://api.example.com' }
});
```

### get(scope, key)

获取全局变量。

- `scope`: 命名空间，字符串类型
- `key`: 变量名，字符串类型
- 返回: 变量值，如果不存在则返回 undefined

```ts
const config = global.get('myApp', 'config');
```

### getAll(scope)

获取命名空间下的所有变量。

- `scope`: 命名空间，字符串类型
- 返回: 包含所有键值对的对象，如果命名空间不存在则返回 undefined

```ts
const allValues = global.getAll('myApp');
```

### has(scope, key?)

检查全局变量是否存在。

- `scope`: 命名空间，字符串类型
- `key`: 可选，变量名，字符串类型
- 返回: 布尔值，表示变量是否存在

```ts
// 检查特定变量是否存在
if (global.has('myApp', 'config')) {
  // 存在
}

// 检查命名空间是否存在
if (global.has('myApp')) {
  // 存在
}
```

### remove(scope, key?)

删除全局变量。

- `scope`: 命名空间，字符串类型
- `key`: 可选，变量名，字符串类型
- 返回: 布尔值，表示是否成功删除

```ts
// 删除特定变量
global.remove('myApp', 'config');

// 删除整个命名空间
global.remove('myApp');
```

## 许可证

MIT
npm package: @seed-fe/storage
Description: 持久化保存数据，基于 localforage 封装
Author: xianghongai
Latest version: 1.0.0

# @seed-fe/storage

持久化保存数据，基于 localforage 封装。支持在浏览器中使用 IndexedDB、WebSQL 或 localStorage 进行数据存储。

## 特性

- 提供一致的 API 接口
- 支持异步存储操作
- 自动选择最佳存储方式（IndexedDB > WebSQL > localStorage）
- 支持复杂数据类型（对象、数组等）
- TypeScript 支持
- 支持多实例隔离

## 安装

```bash
# npm
npm install @seed-fe/storage

# yarn
yarn add @seed-fe/storage

# pnpm (推荐)
pnpm add @seed-fe/storage
```

## 使用

### 基础用法

```typescript
import storage from '@seed-fe/storage';

// 存储数据
await storage.setItem('user', { id: 1, name: 'John' });

// 获取数据
const user = await storage.getItem('user');
console.log(user); // { id: 1, name: 'John' }

// 删除数据
await storage.removeItem('user');

// 获取所有键名
const keys = await storage.keys();
console.log(keys); // ['key1', 'key2', ...]

// 清除所有数据
await storage.clear();
```

### 创建独立实例

```typescript
import { createStorage } from '@seed-fe/storage';

// 创建独立的存储实例
const userStorage = createStorage('user');
const settingsStorage = createStorage('settings');

// 使用独立实例
await userStorage.setItem('profile', { /* ... */ });
await settingsStorage.setItem('theme', 'dark');
```

### TypeScript 支持

```typescript
type User = {
  id: number;
  name: string;
  email: string;
};

// 类型安全的存储操作
await storage.setItem<User>('currentUser', {
  id: 1,
  name: 'John',
  email: 'john@example.com'
});

const user = await storage.getItem<User>('currentUser');

if (user) {
  console.log(user.name); // TypeScript 类型提示
}
```

## API

### 导出

| 导出 | 说明 |
|------|------|
| `storage` | 默认导出的全局存储实例 |
| `createStorage(name: string)` | 创建一个新的存储实例，`name` 用于隔离不同实例的数据 |

### 方法

| 方法 | 说明 | 参数 | 返回值 |
|------|------|------|--------|
| `getItem<T>(key: string)` | 获取存储的数据 | `key`: 存储键名 | `Promise<T \| null>` |
| `setItem<T>(key: string, value: T)` | 存储数据 | `key`: 存储键名<br>`value`: 要存储的值 | `Promise<T>` |
| `removeItem(key: string)` | 删除存储的数据 | `key`: 要删除的键名 | `Promise<void>` |
| `keys()` | 获取所有存储的键名 | - | `Promise<string[]>` |
| `clear()` | 清除所有存储的数据 | - | `Promise<void>` |
| `getInstance(name: string)` | 创建新的存储实例 | `name`: 实例名称 | `Storage` |

### 类型参数

| 参数 | 说明 |
|------|------|
| `T` | 存储值的类型，用于类型安全的存储和检索 |

## 注意事项

1. 所有操作都是异步的，需要使用 `async/await` 或 Promise 链式调用
2. 存储的值会被自动序列化/反序列化，支持存储复杂的数据类型
3. 在不支持 IndexedDB 和 WebSQL 的环境下会自动降级使用 localStorage
4. localStorage 模式下存在存储大小限制（通常为 5-10 MB）

## 许可证

MIT
npm package: @seed-health/tokens
Description: Design tokens for Seed Health applications.
Author: Seed Health
Latest version: 1.0.15

# @seed-health/tokens

Design tokens for Seed Health applications.

> **Note:** This repository is maintained by Seed Health and is open for visibility and usage, but not accepting external contributions. Tokens are automatically synced from our Figma design system.

## Installation

```bash
npm install @seed-health/tokens
```

## Usage

### CSS Variables

```jsx
import '@seed-health/tokens/build/css/variables.css';
import '@seed-health/tokens/build/css/styles.css';

function Button() {
  return (
    <button
      className="text-fixed-body-medium"
      style={{
        backgroundColor: 'var(--color-primary-500)',
        padding: 'var(--spacing-medium)'
      }}>
      Click me
    </button>
  );
}
```

### JavaScript/TypeScript

```jsx
import * as tokens from '@seed-health/tokens';

function Button() {
  return (
    <button style={{
      ...tokens.FixedLabelMedium,
      padding: tokens.SpacingX2
    }}>
      Click me
    </button>
  );
}
```

### SCSS

```scss
@use '@seed-health/tokens/build/scss/variables' as *;
@use '@seed-health/tokens/build/scss/mixins' as *;

.button {
  @include text-fixed-label-medium;
  background-color: $color-primary-500;
  padding: $spacing-medium;
}
```

### CSS Modules

```css
.button {
  background-color: var(--color-primary-500);
  padding: var(--spacing-medium);
}
```

### React (styled-components)

```tsx
import { GlobalTokenStyles } from '@seed-health/tokens/react';

function App() {
  return (
    <>
      <GlobalTokenStyles />
      {/* Your app content */}
    </>
  );
}
```

## Available Formats

| Format | Path | Description |
|--------|------|-------------|
| CSS Variables | `build/css/variables.css` | Custom properties for colors, spacing, etc. |
| CSS Classes | `build/css/styles.css` | Typography and effect utility classes |
| React Component | `build/react/global-token-styles.tsx` | styled-components GlobalStyle |
| SCSS Variables | `build/scss/_variables.scss` | Sass variables |
| SCSS Mixins | `build/scss/_mixins.scss` | Typography and effect mixins |
| JavaScript | `build/js/tokens.js` | ES6 module with named exports |
| TypeScript | `build/js/tokens.d.ts` | Type definitions |
| JSON | `build/json/tokens.json` | Nested structure (kebab-case keys) |
| JSON (Flat) | `build/json/tokens-flat.json` | Flat key-value pairs |

## License

MIT
npm package: @seed-media/config
Description: ## Usage
Author: Ben Swinburne
Latest version: 1.0.0

# Configuration Loader/Reader

## Usage

Assuming the following config directory

    config/app.js
    config/database.js
    config/mail.js

All files are loaded from the directory into a configuration object in the
following format `config[filename]`.

Assuming the database.js file in the above example contained the following
object as a the default export

    {
      host: '127.0.0.1',
      user: 'bob'
    }

    const config = new Config([ string path = ./config/ ])

    // Getting variables
    const database = config.get('database') // {...}
    const databaseHost = config.get('database.host') // 127.0.0.1

    // Getting variables with a default
    const databaseUser = config.get('database.user', 'root') // Bob
    const databaseName = config.get('database.name', 'mydatabase') // mydatabase
npm package: @seed-media/env
Description: ## Usage
Author: Ben Swinburne
Latest version: 2.2.1

# Environment Loader/Reader

## Usage

    const env = require('@seed-media/env')

    // Getting variables
    const databaseHost = env.get('DB_HOST')

    // Getting variables with a default
    const endpoint = env.get('ENDPOINT', 'https://localhost')

    // Setting variables
    env.set('MY_ENV_VAR', 'value')

## Notes

Truthy or falsey envrionment variables are converted to boolean values. For
example

    FOO=true // bool true
    FOO=1 // bool true
    FOO=false // bool false
    FOO=0 // bool false
npm package: @seed-media/eslint-config
Description: Seed Media's ESLint configurations.
Latest version: 0.0.7

# @seed-media/eslint-config

Seed media's ESLint configurations.

## Installation

Install this config package and ESLint:

``$ npm install --save-dev @seed-media/eslint-config``

Next, install any necessary peer dependencies warned about when you ran the above command.

# Usage

This repository comes with two different main configurations: client and Meteor. Check the respective directory's README.md for usage information.
npm package: @seed-media/tracking
Description: Node compatible Seed SDK
Author: Seed Media
Latest version: 1.2.5

# Seed Tracking
Seed tracking that works in the browser and on the server

### Development
Copy .env.example to .env and utilise the development URLS on your local machine to develop this repository.

```
yarn install
yarn watch
```

### to run the tests
```
yarn test
```

### to build just run
```
yarn build
```

### Documentation
#### track(event, payload)
The track functionality accepts `Page View`, `Share`, `Click`, `Identification` and any other custom events.
The provided payload will be added to a common payload which contains the `app id`, `seed id`, tracking package information with a timestamp and payload fingerprint.
npm package: @seed-run/cli
Description: A CLI to help deploy your Seed apps.
Author: Seed
Latest version: 0.1.2

# Seed CLI [![npm](https://img.shields.io/npm/v/@seed-run/cli.svg)](https://www.npmjs.com/package/@seed-run/cli)

Install the `@seed-run/cli` CLI.

```bash
$ npm install -g @seed-run/cli
```

And trigger a deployment to your apps on Seed.

```bash
$ SEED_TOKEN=ACME_ORG_TOKEN seed deploy --org acme --app backend-api --stage dev --commit 700b9c2
```

### Options

You simply need to pass in the:

- Org name `--org`
- App name `--app`
- Stage name `--stage`
- Git commit SHA `--commit`
- And a Seed CLI token as an environment variable `SEED_TOKEN`

### Seed CLI Token

You can generate the `SEED_TOKEN` from your org settings in the [Seed console](https://console.seed.run).

### Documentation

[Read more about deploying with the Seed CLI over on the docs](https://seed.run/docs/deploying-with-the-seed-cli).
npm package: @seed-ship/n8n-nodes-voyage-embeddings
Description: n8n node to embed content with voyageai embeddings
Author: Info
Latest version: 0.2.6

![Banner image](https://user-images.githubusercontent.com/10284570/173569848-c624317f-42b1-45a6-ab09-f0ea3c247648.png)

# n8n-nodes-starter

This repo contains example nodes to help you get started building your own custom integrations for [n8n](n8n.io). It includes the node linter and other dependencies.

To make your custom node available to the community, you must create it as an npm package, and [submit it to the npm registry](https://docs.npmjs.com/packages-and-modules/contributing-packages-to-the-registry).

## Prerequisites

You need the following installed on your development machine:

* [git](https://git-scm.com/downloads)
* Node.js and pnpm. Minimum version Node 18. You can find instructions on how to install both using nvm (Node Version Manager) for Linux, Mac, and WSL [here](https://github.com/nvm-sh/nvm). For Windows users, refer to Microsoft's guide to [Install NodeJS on Windows](https://docs.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows).
* Install n8n with:
  ```
  pnpm install n8n -g
  ```
* Recommended: follow n8n's guide to [set up your development environment](https://docs.n8n.io/integrations/creating-nodes/build/node-development-environment/).

## Using this starter

These are the basic steps for working with the starter. For detailed guidance on creating and publishing nodes, refer to the [documentation](https://docs.n8n.io/integrations/creating-nodes/).

1. [Generate a new repository](https://github.com/n8n-io/n8n-nodes-starter/generate) from this template repository.
2. Clone your new repo:
   ```
   git clone https://github.com/<your organization>/<your-repo-name>.git
   ```
3. Run `pnpm i` to install dependencies.
4. Open the project in your editor.
5. Browse the examples in `/nodes` and `/credentials`. Modify the examples, or replace them with your own nodes.
6. Update the `package.json` to match your details.
7. Run `pnpm lint` to check for errors or `pnpm lintfix` to automatically fix errors when possible.
8. Test your node locally. Refer to [Run your node locally](https://docs.n8n.io/integrations/creating-nodes/test/run-node-locally/) for guidance.
9. Replace this README with documentation for your node. Use the [README_TEMPLATE](README_TEMPLATE.md) to get started.
10. Update the LICENSE file to use your details.
11. [Publish](https://docs.npmjs.com/packages-and-modules/contributing-packages-to-the-registry) your package to npm.

## More information

Refer to our [documentation on creating nodes](https://docs.n8n.io/integrations/creating-nodes/) for detailed information on building your own nodes.

## License

[MIT](https://github.com/n8n-io/n8n-nodes-starter/blob/master/LICENSE.md)
npm package: @seed-token/seed-token
Description: "# seed-token"  by Ex_Nar (npm:exnargithub)
Latest version: 0.0.6

"# seed-token" 
by Ex_Nar (npm:exnargithub)

What is seed-token ?
----

Its tring seeding a token which is like a hash.
The only identify for more flexiable.
It is using sha256 as generator and turn into target dictionary. 


Installation
------------

    npm i @seed-token/seed-token



Usage
-----

```js
const seedToken = require('@seed-token/seed-token')
```

seedCode(encodeData = {} , dictionaryArray = [] )

```js
const seedToken = require('@seed-token/seed-token')
const encodeData = {
    identify:"abcd",
    // seedLength is required
    // seedLength default = 32
    seedLength:60,
}
const dictionaryArray = [
    "123456789",
    "A",
    "bcd",
];
// the coming dictionary order will be accord to 
// "123456789Abcd"
console.log(seedToken(encodeData,dictionaryArray));
// sample for algo. v04
// 3872142b9b57833d5c2dd998c287988bd26A73b8A6845cb645683bc7d9b8
```
dictionaryArray default : 
```js
// default setting
dictionaryArray = [
    "0123456789",
    "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
    "abcdefghijklmnopqrstuvwxyz",
]
```
you can change the 'dictionaryArray' to any char you like in any order. 
(\n\t is supported | Although it is useless)




License
-------
Licensed under MIT to all version lower than or equal to 1.0.0
npm package: @seedalpha/driver
Description: API driver scaffolding for node and browser
Author: Vladimir Popov
Latest version: 1.5.11

# Driver

[![wercker status](https://app.wercker.com/status/f7c1bf9a0aa7cf6881ee97e683299ffa/m "wercker status")](https://app.wercker.com/project/bykey/f7c1bf9a0aa7cf6881ee97e683299ffa)

Node.js API driver scaffolding with events, documentation and hooks that works in node and browser

### Installation

    $ npm install git+ssh://git@github.com:seedalpha/driver.git

### Usage
    
    // index.js
    var Driver = require('driver');
    
    var driver = new Driver('api');
    
    driver.define('echo', ['message'], function(context) {
      context.result(context.params.message);
    });
    
    var api = driver.build();
    
    api.echo('Hello', function(error, result) {
      console.log(error, result); // null, 'Hello'
    });

### Author

Vladimir Popov <rusintez@gmail.com>

### License

MIT
npm package: @seedalpha/enchilada
Description: middleware for automatic javascript bundles
Author: Roman Shtylman
Latest version: 0.13.10

# enchilada [![Build Status](https://secure.travis-ci.org/defunctzombie/node-enchilada.png?branch=master)](http://travis-ci.org/defunctzombie/node-enchilada)

serve up your javascript files all wrapped up using [browserify](https://github.com/substack/node-browserify). Yum!

## with express/connect

```javascript
var app = express();

// serves up all your javascript files, handling all require() calls
app.use(enchilada(__dirname + '/public'));

// fallback for other static resources
app.use(express.static(__dirname + '/public'));
```

Now just visit any ```.js``` url which maps to a path under /public and the packaged file will be served.

## sourcemaps

Versions 0.7+ of enchilada do not bundle sourcemaps with your javascript files; instead sourceMapURL comment is used. This allows for specifying both the `compress` and `debug` options as true in production without impacting users but still benefiting from being able to obtain sourcemaps. Care should be taken to limit access to the mapfiles (served via the /path/to/original/js/script.map.json) usually with middleware before enchilada.

## options

No one likes a stale enchilada. Out in the real world, you want to leverage browser caching for rarely changing files. Imagine that your project uses files like jquery or [engine.io](https://github.com/LearnBoost/engine.io-client), these files don't change as much as your app code. It would be silly to keep sending them with every js file you serve up. Enchilada makes this easy to do.

Just add the proper ingredients and your enchilada will be served up as you requested.

```javascript
app.use(enchilada({
    src: __dirname + '/public', // location of your js files
    cache: true || false, // default false (use true for production to disable file watching)
    compress: true || false || { uglify options }, // default false
    debug: true || false, // default false (enable sourcemap output with bundle)
    watchCallback: function(err, filename) {}, // optional (use to do something clever, like tell client to reload the page)
    routes: {
        // key is the url route, value is either a file relative to src
        '/js/jquery.js': './js/jquery.js',
        // or a module installed via npm
        '/js/engine.io.js': 'engine.io-client'
    },
    transforms: [ handleify, brfs ]
}));
```

Now just make sure you load the required scripts before any other js file that might use them.

```html
<!-- load the scripts we know will be used by several files -->
<script src="/js/jquery.js"></script>
<script src="/js/engine.io.js"></script>

<!-- load other js files as you would before -->
<script src="/js/app.js"></script>
```

## examples

See the [examples](examples) directory for working code you can copy and paste.

## install

Install with [npm](https://npmjs.org)

```shell
npm install enchilada
```
npm package: @seedalpha/express-subdomain-router
Description: Rewrite request url
Author: Vladimir Popov
Latest version: 1.0.13

# express-subdomain-router

Express 4 subdomain router. Inspired by `express-subdomain`.

[![NPM Package](https://img.shields.io/npm/v/express-subdomain-router.svg?style=flat)](https://www.npmjs.org/package/express-subdomain-router)
[![Build Status](https://travis-ci.org/seedalpha/express-subdomain-router.svg?branch=master)](https://travis-ci.org/seedalpha/express-subdomain-router/branches)
[![Dependencies](https://david-dm.org/seedalpha/express-subdomain-router.svg)](https://david-dm.org/seedalpha/express-subdomain-router)

### Usage

```javascript

var express   = require('express');
var subdomain = require('express-subdomain-router');

var app = express();

// simple nested
var api = express.Router();
var v1 = express.Router();
var v2 = express.Router();

app.use(subdomain('api', api));
api.use(subdomain('v1', v1)); // matches v1.api.example.com
api.use(subdomain('v2', v2)); // matches v2.api.example.com

// simple multi

var router = express.Router();
app.use('api.v1', router); // matches api.v1.example.com

// nested multi
var test = express.Router();
app.use(subdomain('d.e.f', test));

test.use(subdomain('a.b.c', function(req, res, next) {
  res.send('You\'ve successfully navigated to a.b.c.d.e.f.example.com');
}));

// wildcard
var router = express.Router();

app.use(subdomain('*', router));         // matches any single subdomain will do
app.use(subdomain('*.support', router)); // matches `en.support.example.com`, `ru.support.example.com`, etc.

```

### Installation

    $ npm install express-subdomain-router --save

### Development

    $ git clone git@github.com:seedalpha/express-subdomain-router.git
    $ cd express-subdomain-router
    $ npm install
    $ npm test

### License

The MIT License (MIT)
Copyright © 2015 SeedAlpha

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
npm package: @seedalpha/flatten
Description: Flatten nested arrays
Author: Vladimir Popov
Latest version: 1.0.10

# flatten

Flatten nested arrays

### Installation
    
    $ npm install seed-flatten --save

### Usage

```javascript
var flatten = require('seed-flatten');

flatten([1,2,3,[4,[[5]]],6]); // [1,2,3,4,5,6]

```
### Development
    
    $ git clone git@github.com:seedalpha/flatten.git
    $ cd flatten
    $ npm install
    $ npm test

### Author

Vladimir Popov <vlad@seedalpha.net>

### License

©2015 SeedAlpha
npm package: @seedalpha/quesadilla
Description: middleware for automatic sass bundles
Author: Vladimir Popov
Latest version: 2.2.10

# quesadilla [![Build Status](https://travis-ci.org/seedalpha/quesadilla.svg)](https://travis-ci.org/seedalpha/quesadilla)

Automatically build, watch and serve your sass files. Highly inspired by [enchilada](https://github.com/defunctzombie/node-enchilada).

## with express/connect

```javascript
var app = express();

// serves up all your sass files
app.use(quesadilla(__dirname + '/public'));

// fallback for other static resources
app.use(express.static(__dirname + '/public'));
```

Now just visit any ```.css``` url which maps to a path under /public and the compiled file will be served.

## options

```javascript
app.use(quesadilla({
  src: __dirname + '/public', // location of your scss files
}));
```

quesadilla will forward options to `node-sass`, for example:

```javascript
app.use(quesadilla({
  src: __dirname + '/style',
  outputStyle: 'compressed'
}));
```

## examples

See the [examples](examples) directory for working code you can copy and paste.

## install

Install with [npm](https://npmjs.org)

```shell
npm install quesadilla
```

## License

MIT
npm package: @seedalpha/queue
Description: FIFO queue for node and browser
Author: Vladimir Popov
Latest version: 2.1.11

# queue

[![wercker status](https://app.wercker.com/status/7aa55ee6d0f0ecc0ab21220d2d2eb2d3/m "wercker status")](https://app.wercker.com/project/bykey/7aa55ee6d0f0ecc0ab21220d2d2eb2d3)

FIFO queue for node and browser

### Example

    Queue()
      .add(function(next){ console.log(1); next(); })
      .add(function(next){ console.log(2); next(); })
      .add(function(next){ console.log(3); next(); })
      .end(function(error){ console.log(error, 'finish'); }); // -> 1 ; 2 ; 3 ; undefined, 'finish'
    

    var q = new Queue();
    q.add(function(next){ setInterval(function(){ next(); }, 1000); });
    q.end(function(error){}); // -> will throw an error, after 2000ms (on second tick)
    
    var q = new Queue(4, 2);
    q.add(function(n, m, next) { console.log(n,m); });
    q.end(function(){}); // -> 4, 2
    
### Author

Vladimir Popov <rusintez@gmail.com>

### License

MIT
npm package: @seedalpha/rebuffer
Description: re-buffer stream to specified chunk length
Author: Vladimir Popov
Latest version: 1.0.11

# rebuffer

A transform stream that buffers internally and emits chunks of given length.

[![NPM Package](https://img.shields.io/npm/v/rebuffer.svg?style=flat)](https://www.npmjs.org/package/rebuffer)
[![Build Status](https://travis-ci.org/seedalpha/rebuffer.svg?branch=master)](https://travis-ci.org/seedalpha/rebuffer/branches)
[![Dependencies](https://david-dm.org/seedalpha/rebuffer.svg)](https://david-dm.org/seedalpha/rebuffer)

### Installation

    $ npm install rebuffer --save

### Usage

```javascript
var rebuffer = require('rebuffer');

fs.readReadStream('bigfile.txt')
  .pipe(rebuffer(1024 * 1024)) // will buffer input chunks, and emit 1mb chunks out
  .pipe(fs.createWriteStream('foo.txt'));

```

### Author

Vladimir Popov <rusintez@gmail.com>

### License

MIT
npm package: @seedalpha/s3-readable
Description: Read S3 files as streams
Author: Vladimir Popov
Latest version: 1.0.11

# s3-readable

Read S3 files using streams

[![NPM Package](https://img.shields.io/npm/v/s3-readable.svg?style=flat)](https://www.npmjs.org/package/s3-readable)
[![Dependencies](https://david-dm.org/seedalpha/s3-readable.svg)](https://david-dm.org/seedalpha/s3-readable)

### Installation

    $ npm install s3-readable --save
    
### Usage

```javascript

var fs = require('fs');
var aws = require('aws-sdk');
var readable = require('s3-readable');

aws.config.update({
  accessKeyId:      process.env.AMAZON_ACCESS_KEY_ID,
  secretAccessKey:  process.env.AMAZON_ACCESS_KEY_SECRET,
  region:           process.env.S3_REGION
});

var s3 = new aws.S3();

var stream = readable(s3).createReadStream({
  Bucket: 'test',
  Key: 'file.pdf'
  // takes same params as `s3.getObject`
});

// optionally

stream.on('open', function(file) {
  console.log(file); // { ContentLength: 8, ContentType: 'text/plain', Bucket: '...', Key: 'test.txt', Body: self }
});

stream.pipe(fs.createWriteStream(__dirname + '/file.pdf'));

```

### Author

Vladimir Popov <rusintez@gmail.com>

### License

MIT
npm package: @seedalpha/s3-writeable
Description: Write to S3 using streams (via multipart upload)
Author: Vladimir Popov
Latest version: 1.0.12

# s3-writeable

Write to S3 using streams (via multipart upload)

[![NPM Package](https://img.shields.io/npm/v/s3-writeable.svg?style=flat)](https://www.npmjs.org/package/s3-writeable)
[![Dependencies](https://david-dm.org/seedalpha/s3-writeable.svg)](https://david-dm.org/seedalpha/s3-writeable)

### Installation

    $ npm install s3-writeable --save
    
### Usage

```javascript

var fs = require('fs');
var aws = require('aws-sdk');
var writeable = require('s3-writeable');

aws.config.update({
  accessKeyId:      process.env.AMAZON_ACCESS_KEY_ID,
  secretAccessKey:  process.env.AMAZON_ACCESS_KEY_SECRET,
  region:           process.env.S3_REGION
});

var s3 = new aws.S3();

var stream = writeable(s3).createWriteStream({
  Bucket: 'test',
  Key: 'file.pdf'
  // takes same params as `s3.createMultipartUpload`
});

fs.createReadStream(__dirname + '/file.pdf')
  .pipe(stream)
  .on('error', function(err) {})
  .on('end', function() {
    // all done
  });

```

### Author

Vladimir Popov <rusintez@gmail.com>

### License

MIT
npm package: @seedalpha/timestamp
Description: Always° Unique timestamps
Author: Vladimir Popov
Latest version: 1.0.10

# timestamp

Always° Unique timestamps

° – capable of generating 99,999,999 unique timestamps per millisecond

### Installation

    $ npm install git+ssh://git@github.com:seedalpha/timestamp.git

### Usage

    var timestamp = require('timestamp');
    
    var now = timestamp();  # "1408341562413"
    var now2 = timestamp(); # "1408341562413.00000001"

### Author

Vladimir Popov <vlad@seedalpha.net>

### License

MIT
npm package: @seedalpha/tostream
Description: convert String, Buffer, Readable to Readable stream
Author: Vladimir Popov
Latest version: 1.0.10

# tostream

Convert String or Buffer to Readable Stream. Returns input as-is if it's a stream.

### Installation

     $ npm install tostream --save

### Usage

```javascript
var toStream = require('tostream');

toStream('hello').pipe(process.stdout);
toStream(new Buffer('hello')).pipe(process.stdout);

var Readable = require('stream').Readable;
var stream = new Readable();

toStream(stream) === stream;
```

### Development

    $ git clone git@github.com:seedalpha/tostream.git
    $ cd tostream
    $ npm install
    $ npm test

### Author

Vladimir Popov <vlad@seedalpha.net>

### License

MIT
npm package: @seedalpha/vue
Description: Simple, Fast & Composable MVVM for building interative interfaces
Author: Evan You
Latest version: 0.11.11-sa

<p align="center"><a href="http://vuejs.org" target="_blank"><img width="100"src="http://vuejs.org/images/logo.png"></a></p>

# Vue.js [![Build Status](https://travis-ci.org/yyx990803/vue.svg?branch=master)](https://travis-ci.org/yyx990803/vue) [![Selenium Test Status](https://saucelabs.com/buildstatus/vuejs)](https://saucelabs.com/u/vuejs) [![Coverage Status](https://img.shields.io/coveralls/yyx990803/vue.svg)](https://coveralls.io/r/yyx990803/vue?branch=master)

> MVVM made simple.

## Introduction

Vue.js is a library for building interactive web interfaces. It provides the benefits of MVVM data binding and a composable component system with a simple and flexible API. You should try it out if you like:

- Intuitive API that simply makes sense
- Extendable Data bindings
- Plain JavaScript objects as models
- Building interface by composing reusable components
- Flexibility to mix & match the view layer with other libraries

It's really really easy to get started. Seriously, it's so easy:

``` html
<div id="demo">
  {{message}}
  <input v-model="message">
</div>
```

``` js
var demo = new Vue({
  el: '#demo',
  data: {
    message: 'Hello Vue.js!'
  }
})
```

To check out the live demo, guides and API reference, visit [vuejs.org](http://vuejs.org).

## Browser Support

Vue.js supports [most ECMAScript 5 compliant browsers](https://saucelabs.com/u/vuejs), essentially IE9+. IE8 and below are not supported.

## Contribution

Read the [contributing guide](https://github.com/yyx990803/vue/blob/master/CONTRIBUTING.md).

## Get in Touch

- For latest releases and announcements, follow on Twitter: [@vuejs](https://twitter.com/vuejs)
- Live discussion: [![Gitter](https://badges.gitter.im/Join Chat.svg)](https://gitter.im/yyx990803/vue)
- Bugs reports: first read the [issue checklist](https://github.com/yyx990803/vue/blob/master/CONTRIBUTING.md#issue-reporting-checklist), then [open an issue](https://github.com/yyx990803/vue/issues).
- Questions, suggestions, feature requests: open an issue at [vuejs/Discussion](https://github.com/vuejs/Discussion/issues).
- If you have a Vue-related project/component/tool, add it to [this list](https://github.com/yyx990803/vue/wiki/User-Contributed-Components-&-Tools)!

## Changelog

Details changes for each release are documented in the [release notes](https://github.com/yyx990803/vue/releases).

## License

[MIT](http://opensource.org/licenses/MIT)

Copyright (c) 2014 Evan You