open-index/open-npm huggingface dataset:
npm package: @heywinit/chat-flows
Description: Conversation flow engine for the Vercel Chat SDK — linear multi-turn flows with automatic routing
Author: Heywinit
Latest version: 0.1.0

# @heywinit/chat-flows

Conversation flow engine for the Vercel Chat SDK. Build linear, multi-turn conversational flows with automatic routing and state management.

## Features

- **Fluent API**: Type-safe `FlowBuilder` for defining conversation steps.
- **Automatic Routing**: `FlowRouter` manages thread subscriptions and resumes flows based on stored state.
- **Validation**: Built-in and custom validators for user input.
- **Dynamic Content**: Questions can be static strings or dynamic functions based on current flow data.
- **State Management**: Integrates with the Chat SDK's state adapters to persist progress across restarts.
- **Lifecycle Hooks**: Define custom behavior for flow completion and abandonment.

## Installation

```bash
pnpm add @heywinit/chat-flows
```

## Basic Usage

```typescript
import { createFlow, FlowRouter, required, isEmail } from '@heywinit/chat-flows';

// 1. Define your data structure
interface OnboardingData {
  name: string;
  email: string;
}

// 2. Create the flow
const onboardingFlow = createFlow<OnboardingData>('onboarding')
  .ask('name', "Hey! What's your name?", {
    validate: required,
  })
  .ask('email', (ctx) => `Nice to meet you, ${ctx.data.name}! What's your email?`, {
    validate: isEmail,
  })
  .done(async (ctx, thread) => {
    await thread.post(`🎉 Welcome aboard, ${ctx.data.name}!`);
  });

// 3. Setup the router
const router = new FlowRouter(bot);
router.register(onboardingFlow);

// 4. Start the flow
bot.onNewMention(async (thread, message) => {
  await router.start('onboarding', thread, message);
});
```

## Technical Details

### FlowRouter

The `FlowRouter` is the orchestrator. It listens for messages on subscribed threads and attempts to resume active flows.

- **`register(flow)`**: Adds a flow definition to the router.
- **`start(flowName, thread, message, initialData?)`**: Initiates a new flow instance.
- **`abandonKeywords`**: Configurable keywords (default: `cancel`, `stop`, `quit`) that trigger the `onAbandon` hook.

### FlowBuilder

Created via `createFlow<T>(name)`.

- **`.ask(key, question, options)`**:
    - `key`: The property in your data object where the response is stored.
    - `question`: A string or `(ctx) => string`.
    - `options.validate`: A function or array of functions `(val) => string | true`.
- **`.done(handler)`**: Executed when all steps are completed successfully.
- **`.onAbandon(handler)`**: Executed if the user sends an abandon keyword.

### Validators

The package exports several common validators:
- `required`
- `minLength(n)`
- `maxLength(n)`
- `isEmail`
- `oneOf([...])`
- `composeValidators(...validators)`

## License

MIT
npm package: @heywinit/chat-middleware
Description: Middleware layer for the Vercel Chat SDK — global error handling and per-event context enrichment
Author: Heywinit
Latest version: 0.1.0

# @heywinit/chat-middleware

Middleware layer for the Vercel Chat SDK. Add global error handling, authentication, and context enrichment to your bot with a simple, familiar middleware pattern.

## Features

- **Global Interceptors**: Run logic before every event handler (mention, message, action, etc.).
- **Context Enrichment**: Inject data into a shared context object accessible by all downstream handlers.
- **Global Error Handling**: Catch and handle errors across all bot interactions in one place.
- **Ordered Execution**: Middleware functions execute in the order they are registered.
- **Async Support**: Full support for `async/await` in the middleware chain.

## Installation

```bash
pnpm add @heywinit/chat-middleware
```

## Basic Usage

```typescript
import { applyMiddleware } from '@heywinit/chat-middleware';

applyMiddleware(bot, {
  beforeEach: [
    // Logger & Context Enrichment
    async (ctx, next) => {
      ctx.data.startTime = Date.now();
      console.log(`[${ctx.type}] Processing event...`);
      await next();
      const duration = Date.now() - ctx.data.startTime;
      console.log(`[${ctx.type}] Handled in ${duration}ms`);
    },
    // Simple Auth
    async (ctx, next) => {
      if (ctx.type === 'action' && !ctx.event.user.isAdmin) {
        return; // Halt execution if not authorized
      }
      await next();
    }
  ],
  onError: async (err, ctx) => {
    console.error('Bot Error:', err);
    if (ctx.thread) {
      await ctx.thread.post("Oops! Something went wrong.");
    }
  }
});
```

## Technical Details

### `applyMiddleware(bot, config)`

This function wraps the bot's event registration methods to inject the middleware chain.

### Middleware Context (`MiddlewareContext`)

Every middleware function receives a context object:

- **`type`**: The event type (`mention`, `message`, `subscribed`, `action`, `command`).
- **`event`**: The raw event object from the underlying adapter.
- **`thread`**: The `Thread` instance (if applicable to the event).
- **`message`**: The `Message` instance (if applicable to the event).
- **`data`**: A mutable record for passing information between middleware and into your bot's handlers.

### The `next()` Function

Middleware must call `await next()` to continue to the next middleware in the chain or the final event handler. If `next()` is not called, the execution stops.

## License

MIT
npm package: @heyzayn/arcgis-tdtlayer
Description: arcgis 天地图插件
Author: heyzayn
Latest version: 1.0.4

# arcgis tdtlayer

This is a Typescript library for working with the Tianditu layer in ArcGIS.

# Usage

```typescript
import TiandituLayer from '@heyzayn/arcgis-tdtlayer';
const tiandituImgLayer = new TianDiTuLayer<WGS84>(
                {
                    title:"天地图影像",
                    urlTemplate: "http://{subDomain}.tianditu.gov.cn/vec_c/wmts"
                },//和arcgis/core的WebTileLayer一样, 主要是为了提取出影像类型，如 vec_c, img_c 
                SpatialReference.WGS84,//坐标系
                your_tianditu_key);// 天地图key
// 然后将该图层添加到地图中即可
```

# License

MIT
# author

github: https://github.com/DSYZayn
npm package: @hezebin/doraemon
Description: A library of React components and tools commonly used in hezebin
Latest version: 1.3.4

# doraemon

[河泽冰](https://www.hezebin.com)  下一些常用的组件、工具函数、常量等，基于 dumi 构建，并引入 vite 解决组件库庞大后在开发阶段的调试热更新缓慢的问题。

## 开发

```bash
# install dependencies
$ yarn install

# develop library by vite
$ yarn dev

# develop library by docs demo
$ yarn start

# build library source code
$ yarn run build

# build library source code in watch mode
$ yarn run build:watch

# build docs
$ yarn run docs:build

# Locally preview the production build.
$ yarn run docs:preview

# check your project for potential problems
$ yarn run doctor
```

## 发布

1.切换npm源为官方:

```bash
yrm use npm
```

或

```bash
npm config set registry https://registry.npmjs.org
```

2.登录

```bash
npm login
```

```
# Username: ihezebin
# Email: 86744316@qq.com
```

3.发布

```bash
npm publish --access public
```

4.发布结束后切回淘宝源

```bash
yrm use taobao
```

或

```bash
npm config set registry  https://registry.npmmirror.com/
```

## 使用

```bash
yarn add @hezebin/doraemon
```

```js
import { Test } from '@hezebin/doraemon';

<Test></Test>
```

## LICENSE

MIT
npm package: @hezebin/dumi-theme-antd
Description: Ant Design 5.0 官网风格类似的 dumi2 主题插件
Latest version: 0.4.2

<h1 align="center">dumi-theme-antd</h1>

<div align="center">

[dumi](https://d.umijs.org) theme similar to antd v5 website

[![NPM version](https://img.shields.io/npm/v/dumi-theme-antd.svg?style=flat)](https://npmjs.org/package/dumi-theme-antd) [![NPM downloads](http://img.shields.io/npm/dm/dumi-theme-antd.svg?style=flat)](https://npmjs.org/package/dumi-theme-antd) [![Github Actions](https://github.com/KuangPF/dumi-theme-antd/workflows/Deploy/badge.svg)](https://github.com/KuangPF/dumi-theme-antd/actions)

</div>

<p align="center">
  <a href="https://kuangpf.com/dumi-theme-antd">
    <img  src="https://github.com/KuangPF/dumi-theme-antd/assets/20694238/3c0d3907-a524-4ab1-b140-5fc31524f670">
  </a>
</p>

## Usage

Install this theme into `devDependencies`:

```bash
$ pnpm i dumi-theme-antd -D
```

## F&Q

<img width=300 src="https://github.com/KuangPF/dumi-theme-antd/assets/20694238/3aa88f29-0995-4452-8b07-5a46cc522b77">

## Contributing

```bash
# install deps
pnpm install
# start dumi server
pnpm run docs
```

Thank you to all the people who already contributed to `dumi-theme-antd` !

<a href="https://github.com/KuangPF/dumi-theme-antd/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=KuangPF/dumi-theme-antd" />
</a>

## LICENSE

MIT
npm package: @hezeclark1987/devkits-mcp-server
Description: MCP Server for DevKits — 110+ developer tools for AI assistants
Latest version: 1.0.2

# @devkits/mcp-server

> 12 developer tools for AI assistants — powered by [DevKits](https://aiforeverthing.com)

An MCP (Model Context Protocol) server that exposes DevKits developer utilities directly inside Claude Desktop, Cursor, Continue, and any other MCP-compatible AI tool. All tools run **locally** with no external API calls.

---

## Installation

### Option A — npx (no install)

```bash
npx @devkits/mcp-server
```

### Option B — global install

```bash
npm install -g @devkits/mcp-server
```

---

## Claude Desktop Configuration

Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

```json
{
  "mcpServers": {
    "devkits": {
      "command": "npx",
      "args": ["@devkits/mcp-server"]
    }
  }
}
```

---

## Cursor Configuration

Add to `.cursor/mcp.json` in your project root, or to the global `~/.cursor/mcp.json`:

```json
{
  "mcpServers": {
    "devkits": {
      "command": "npx",
      "args": ["@devkits/mcp-server"]
    }
  }
}
```

---

## Continue (VS Code) Configuration

Add to `~/.continue/config.json`:

```json
{
  "experimental": {
    "modelContextProtocolServers": [
      {
        "transport": {
          "type": "stdio",
          "command": "npx",
          "args": ["@devkits/mcp-server"]
        }
      }
    ]
  }
}
```

---

## Available Tools

| Tool | Description | Parameters |
|------|-------------|-----------|
| `devkits_json_format` | Format & validate JSON | `json`, `indent?` |
| `devkits_base64_encode` | Encode text to Base64 | `text` |
| `devkits_base64_decode` | Decode Base64 to text | `encoded` |
| `devkits_jwt_decode` | Decode JWT header & payload | `token` |
| `devkits_regex_test` | Test regex against input | `pattern`, `text`, `flags?` |
| `devkits_url_encode` | URL-encode a string | `url` |
| `devkits_url_decode` | URL-decode a string | `encoded` |
| `devkits_hash_generate` | Generate SHA/MD5 hash | `text`, `algorithm?` |
| `devkits_uuid_generate` | Generate UUID v4 | `count?` |
| `devkits_markdown_to_html` | Convert Markdown to HTML | `markdown` |
| `devkits_diff_compare` | Line-by-line text diff | `text1`, `text2` |
| `devkits_cron_parse` | Parse & explain cron expression | `expression` |

---

## Examples

**Format JSON:**
```
Use devkits_json_format to pretty-print {"name":"Alice","age":30}
```

**Decode a JWT:**
```
Decode this JWT with devkits_jwt_decode: eyJhbGciOiJIUzI1NiJ9...
```

**Generate hashes:**
```
Hash the string "hello world" with sha256 using devkits_hash_generate
```

**Parse a cron expression:**
```
Explain the cron expression "0 9 * * 1-5" using devkits_cron_parse
```

---

## Build from Source

```bash
git clone https://github.com/hezeclark1987/devkits-mcp
cd devkits-mcp
npm install
npm run build
npm start
```

---

## License

MIT — built with love by [DevKits](https://aiforeverthing.com)
npm package: @hezedu/winstrap
Description: Winstrap is the official Bootstrap theme for Microsoft design language.
Author: Microsoft
Latest version: 0.5.15

﻿# Winstrap
##### The official Bootstrap theme for Windows
﻿
http://winstrap.azurewebsites.net/

## Development

### Install Node.js

http://nodejs.org/download/

Make sure Node.js is available in your path.

### Install Grunt and Bower

```
npm install -g grunt-cli
npm install -g bower
```

### Clone the repo

```
git clone https://github.com/winjs/winstrap.git
```

You should have a `winstrap` folder.

### Installing npm packages

To install the required `npm` packages:

```
cd winstrap
npm install
```

## Building Winstrap

Just run:

```
grunt
```

This will compile the generated files into the `dist` folder.

### Launching a local server

Just run this task to display the demo pages in your browser:

```
grunt server
```

Launch this URL in your brower: http://localhost:9001/

The changes you make to the Sass files `*.scss` or source documentation files `*.hbs` will be automatically recompiled. Just refresh your browser window.

- - -

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.
npm package: @hezelclark/base64
Description: Encode and decode Base64 in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/base64

> **Encode and decode Base64 in your terminal**

## Installation

```bash
npm install -g @devkits/base64
```

Or use without installation:

```bash
npx @devkits/base64 "hello world"
```

## Usage

```bash
# Encode
dk-base64 "hello world"

# Decode
dk-base64 -d "aGVsbG8gd29ybGQ="

# From stdin
echo "hello" | dk-base64

# Direct with npx
npx @devkits/base64 -d "SGVsbG8="
```

## Why @devkits/base64?

- ✅ Fast - Instant encoding/decoding
- ✅ Zero dependencies - Pure Node.js
- ✅ Offline - Works without internet
- ✅ Free - Open source (MIT)
- ✅ CLI - Use in your terminal

## Web Version

Prefer a GUI? **https://devkits-tools.surge.sh/tools/base64**

## Pro Features

Upgrade to Pro: **https://devkits-tools.surge.sh/pro**
- Batch processing, API access, cloud sync, and more
- $9 one-time (use code `EARLYBIRD-2026` for 20% off)

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/color-converter
Description: Convert between HEX, RGB, and HSL color formats
Author: hezelclark
Latest version: 1.0.3

# @devkits/color-converter

> **Convert between HEX, RGB, and HSL color formats**

## Installation

```bash
npm install -g @devkits/color-converter
```

## Usage

```bash
# HEX to RGB/HSL
dk-color "#ff0000"
dk-color "#3498db"

# RGB to HEX/HSL
dk-color "rgb(255, 0, 0)"
dk-color "rgb(52, 152, 219)"

# Direct with npx
npx @devkits/color-converter "#00ff00"
```

## Web Version

**https://devkits-tools.surge.sh/tools/color-converter**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/css-tools
Description: CSS minify, format, and color tools
Author: hezelclark
Latest version: 1.0.3

# @devkits/css-tools

> **CSS minify, format, and color tools in your terminal**

## Installation

```bash
npm install -g @devkits/css-tools
```

## Usage

```bash
# Minify CSS file
dk-css -m styles.css

# Format/pretty CSS
dk-css -f styles.css

# Direct with npx
npx @devkits/css-tools -m style.css
```

## Web Version

**https://devkits-tools.surge.sh/tools/css-minifier**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/hash-generator
Description: Generate MD5, SHA1, SHA256, SHA512 hashes
Author: hezelclark
Latest version: 1.0.3

# @devkits/hash-generator

> **Generate MD5, SHA1, SHA256, SHA512 hashes in your terminal**

## Installation

```bash
npm install -g @devkits/hash-generator
```

## Usage

```bash
# Generate all hashes
dk-hash "password123"

# Direct with npx
npx @devkits/hash-generator "my text"
```

## Output

```
Input: "password123"

Hashes:
  MD5: 482c811da5d5b4bc6d497ffa98491e38
  SHA1: f7c3bc1d808e04732adf679965ccc34ca7ae3441
  SHA256: ef92b778bafe771e89245b89ecbc08a44a4e166c06659911881f383d4473e94f
  SHA512: ...
```

## Web Version

**https://devkits-tools.surge.sh/tools/hash-generator**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/html-tools
Description: HTML entity encode and decode in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/html-tools

> **HTML entity encode and decode in your terminal**

## Installation

```bash
npm install -g @devkits/html-tools
```

## Usage

```bash
# Encode HTML entities
dk-html -e "<div>Hello</div>"

# Decode HTML entities
dk-html -d "&lt;div&gt;Hello&lt;/div&gt;"

# Direct with npx
npx @devkits/html-tools -e "<script>alert(1)</script>"
```

## Web Version

**https://devkits-tools.surge.sh/tools/html-entities**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/json-formatter
Description: Format and validate JSON in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/json-formatter

> **Format and validate JSON in your terminal**

## Installation

```bash
npm install -g @devkits/json-formatter
```

Or use without installation:

```bash
npx @devkits/json-formatter '{"foo":"bar"}'
```

## Usage

```bash
# Format JSON string
dk-json '{"name":"test"}'

# Format JSON file
dk-json package.json

# From stdin (pipe)
cat data.json | dk-json

# Direct with npx
npx @devkits/json-formatter package.json
```

## Why @devkits/json-formatter?

- ✅ Fast - Instant formatting
- ✅ Zero dependencies - Pure Node.js
- ✅ Offline - Works without internet
- ✅ Free - Open source (MIT)
- ✅ CLI - Use in your terminal

## Web Version

Prefer a GUI? Check out the web version: **https://devkits-tools.surge.sh/tools/json-formatter**

- 84 developer tools in one PWA
- Works offline
- No signup required

## Pro Features

Upgrade to Pro for advanced features:

- 📦 Batch Processing - Format multiple files at once
- 🔗 API Access - REST API (1000 req/day free)
- ☁️ Cloud Sync - Save and sync snippets
- 🎨 Custom Themes - Dark, Light, Auto
- 📊 Advanced Analytics - Usage statistics
- 💬 Priority Support - Email support

**Price:** $9 one-time payment
**Upgrade:** https://devkits-tools.surge.sh/pro
**Discount:** Use code `EARLYBIRD-2026` for 20% off

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/jwt-decoder
Description: Decode JWT tokens (header and payload) in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/jwt-decoder

> **Decode JWT tokens (header and payload) in your terminal**

## Installation

```bash
npm install -g @devkits/jwt-decoder
```

## Usage

```bash
# Decode a JWT token
dk-jwt "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

# Direct with npx
npx @devkits/jwt-decoder "your.jwt.token"
```

## Output

The decoder shows:
- Header (algorithm, token type)
- Payload (claims, data)
- Expiration status (if `exp` claim exists)

## Web Version

**https://devkits-tools.surge.sh/tools/jwt-decoder**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/regex-tester
Description: Test regular expressions in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/regex-tester

> **Test regular expressions in your terminal**

## Installation

```bash
npm install -g @devkits/regex-tester
```

## Usage

```bash
# Test if string is all digits
dk-regex "^\\d+$" "12345"

# Test email pattern
dk-regex "^\\w+@\\w+\\.\\w+$" "test@example.com"

# Direct with npx
npx @devkits/regex-tester "^hello" "hello world"
```

## Web Version

**https://devkits-tools.surge.sh/tools/regex-tester**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/url-tools
Description: URL encode, decode, and parse in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/url-tools

> **URL encode, decode, and parse in your terminal**

## Installation

```bash
npm install -g @devkits/url-tools
```

## Usage

```bash
# Encode URL
dk-url -e "hello world"

# Decode URL
dk-url -d "hello%20world"

# Parse URL
dk-url -p "https://example.com/path?q=test"

# Direct with npx
npx @devkits/url-tools -e "test url"
```

## Web Version

**https://devkits-tools.surge.sh/tools/url-encoder**

## Pro Features

Upgrade: **https://devkits-tools.surge.sh/pro** - $9 one-time

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezelclark/uuid-generator
Description: Generate RFC 4122 compliant UUIDs in your terminal
Author: hezelclark
Latest version: 1.0.3

# @devkits/uuid-generator

> **Generate RFC 4122 compliant UUIDs in your terminal**

## Installation

```bash
npm install -g @devkits/uuid-generator
```

Or use without installation:

```bash
npx @devkits/uuid-generator 10
```

## Usage

```bash
# Generate 1 UUID
dk-uuid

# Generate multiple UUIDs
dk-uuid 10
dk-uuid 100

# Direct with npx
npx @devkits/uuid-generator 5
```

## Why @devkits/uuid-generator?

- ✅ Fast - Instant generation
- ✅ Zero dependencies - Pure Node.js
- ✅ RFC 4122 compliant - Version 4 UUIDs
- ✅ Free - Open source (MIT)
- ✅ CLI - Use in your terminal

## Web Version

Prefer a GUI? **https://devkits-tools.surge.sh/tools/uuid-generator**

## Pro Features

Upgrade to Pro: **https://devkits-tools.surge.sh/pro**
- Generate 1000+ UUIDs at once
- API access, batch processing, and more
- $9 one-time (use code `EARLYBIRD-2026` for 20% off)

## See Also

- [DevKits](https://devkits-tools.surge.sh) — 82 free developer tools
- [Invoicely](https://invoicely-app.surge.sh) — Free invoice generator for freelancers
- [SnapOG](https://snapog.surge.sh) — Free OG image generator with 20+ templates

## License

MIT © [DevKits Team](https://devkits-tools.surge.sh)
npm package: @hezhou/example-component
Description: intro component
Latest version: 1.0.0

# demo component

example-component

intro component

## API

| 参数名 | 说明 | 必填 | 类型 | 默认值 | 备注 |
| ------ | ---- | ---- | ---- | ------ | ---- |
|        |      |      |      |        |      |
npm package: @hezor/hezor2-sdk
Description: Hezor2 SDK — shared utilities for third-party integrations
Author: Hezor
Latest version: 1.3.2

# @hezor/hezor2-sdk

[![npm version](https://img.shields.io/npm/v/@hezor/hezor2-sdk.svg)](https://www.npmjs.com/package/@hezor/hezor2-sdk)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Hezor2 SDK，供第三方项目引入使用。

## 安装

```bash
# npm
npm install @hezor/hezor2-sdk

# yarn
yarn add @hezor/hezor2-sdk

# pnpm
pnpm add @hezor/hezor2-sdk
```

## 使用

```ts
import { greet, VERSION } from '@hezor/hezor2-sdk'

console.log(VERSION)         // '0.1.0'
console.log(greet('Alice'))  // 'Hello from @hezor/hezor2-sdk, Alice!'
```

## 开发

```bash
# 安装依赖
pnpm install

# 构建
pnpm build

# 开发模式（监听变更）
pnpm dev

# 类型检查
pnpm typecheck

# 运行测试
pnpm test

# 运行测试（监听模式）
pnpm test:watch

# 测试覆盖率
pnpm test:coverage

# Lint
pnpm lint

# 格式化
pnpm format
```

## 发布

```bash
# 先登录 npm
npm login

# 发布（自动执行 build + typecheck）
npm publish --access public
```

## License

[MIT](./LICENSE)
npm package: @hf-/vite-plugin-auto-router
Description: A Vite plugin for auto-generating Vue router configuration based on file system
Latest version: 1.0.0

# vite-plugin-auto-router

一个基于文件系统自动生成 Vue Router 配置的 Vite 插件。

## 特性

- 📁 基于文件系统的路由生成
- 🔄 支持动态路由参数（通过文件名下划线标记）
- 🎯 自动处理索引路由（index.vue）
- 🛠 支持路由元数据配置（.meta.js 文件）
- ⚡️ 开发环境实时更新
- 🎨 可配置的路由生成规则

## 安装

```bash
npm install vite-plugin-auto-router --save-dev
# 或者
yarn add -D vite-plugin-auto-router
# 或者
pnpm add -D vite-plugin-auto-router
```

## 使用方法

在你的 Vite 配置文件中添加插件：

```js
// vite.config.js / vite.config.ts
import { defineConfig } from 'vite'
import autoRouter from 'vite-plugin-auto-router'

export default defineConfig({
  plugins: [
    autoRouter({
      // 配置选项
    })
  ]
})
```

## 配置选项

| 选项 | 类型 | 默认值 | 描述 |
| --- | --- | --- | --- |
| viewsDir | string | 'src/views' | 视图文件所在的目录 |
| outputPath | string | 'src/router/routes.ts' | 路由配置的输出路径 |
| dynamicRouteFromUnderscore | boolean | true | 是否将文件名中的下划线转换为动态路由参数 |
| removeRedundantSegments | boolean | true | 是否移除重复的目录名和文件名 |

## 路由规则

### 基本路由

```
src/views/
  ├── Home.vue         -> /home
  ├── About.vue        -> /about
  └── Users/
      ├── index.vue    -> /users
      └── Profile.vue  -> /users/profile
```

### 动态路由

```
src/views/
  └── Users/
      └── _id.vue      -> /users/:id
```

### 路由元数据

创建与组件同名的 .meta.js 文件来配置路由元数据：

```
src/views/
  └── About.vue
  └── About.meta.js    -> 配置 About 路由的元数据
```

```js
// About.meta.js
export default {
  meta: {
    title: '关于我们',
    requiresAuth: true
  }
}
```

## 许可证

MIT
npm package: @hf-ai-sdk/cloudflare
Description: Cloudflare AI Provider for the vercel AI SDK
Author: Hendry Foe
Latest version: 0.0.3

# ⛅️ ✨ Cloudflare AI Provider ✨ ⛅️

A custom provider that enables [Cloudflare AI](https://ai.cloudflare.com/)'s models for the [Vercel AI SDK](https://sdk.vercel.ai/).

## Install

```bash
npm install @hf-ai-sdk/cloudflare
```

## Usage

```ts

```

For more info, refer to the documentation of the [Vercel AI SDK](https://sdk.vercel.ai/).
npm package: @hfelix/electron-localshortcut
Description: register/unregister a keyboard shortcut locally to a BrowserWindow instance, without using a Menu
Author: Felix Häusler
Latest version: 4.0.1

# electron-localshortcut

A library to register/unregister keyboard shortcuts locally to a `BrowserWindow` instance, without using a `Menu`. This is built to circumvent [this Electron issue](https://github.com/atom/electron/issues/1334).

**NOTE:** This library must be initialized with the current keyboard layout that can be received from `native-keymap` (see usage below). The library isn't shipped with `native-keymap` because it's a native library that is managed by MarkText.

---

Patched version of `electron-localshortcut` that's used in MarkText to prevent the default keyboard event and to solve issues with non-US keyboards.

---

## Installation

```bash
$ npm install --save @hfelix/electron-localshortcut
```

#### Development Setup

```bash
$ yarn install
$ yarn setup-dev
```

## Usage

```javascript
const { electronLocalshortcut } = require('electron-localshortcut');
const { BrowserWindow }  = require('electron');
const { getCurrentKeyboardLayout, getKeyMap } = require('native-keymap');

// Set the current users keyboard layout to translate keyboard events.
electronLocalshortcut.setKeyboardLayout(getCurrentKeyboardLayout(), getKeyMap());

const win = new BrowserWindow();
win.loadUrl('about://blank');
win.show();

electronLocalshortcut.register(win, 'Ctrl+A', () => {
  console.log('You pressed ctrl & A');
});

electronLocalshortcut.register(win, 'Ctrl+B', () => {
  console.log('You pressed ctrl & B');
});

electronLocalshortcut.register(win, ['Ctrl+R', 'F5'], () => {
  console.log('You pressed ctrl & R or F5');
});

console.log(
  electronLocalshortcut.isRegistered(win, 'Ctrl+A')
);

electronLocalshortcut.unregister(win, 'Ctrl+A');
electronLocalshortcut.unregisterAll(win);
```

## Shortcuts behaviour

If you register a shortcut for a window, this module unregister the shortcut when the window is hidden, unfocused or minimized, and automatically restore them when the window is restored and focused again. This differ from native [global-shortcuts](https://github.com/atom/electron/blob/master/docs/api/global-shortcut.md) because they doesn't interfere with other apps running on the same machine.

## API

See JSDoc or [example](example/).

## License

This project use parts of the following open-source projects licensed under *The MIT License (MIT)*: `atom-keymap`, `electron-localshortcut`, `electron-is-accelerator` and `keyboardevent-from-electron-accelerator`. Please see [LICENSE](LICENSE) for more details.
npm package: @hfelix/electron-spellchecker
Description: Implement spellchecking, correctly
Latest version: 2.0.0

# electron-spellchecker

> Modified version of electron-spellchecker that is used in Mark Text.

electron-spellchecker is a library to help you implement spellchecking in your Electron applications. This library intends to solve the problem of spellchecking in a production-ready, international-friendly way.

electron-spellchecker:

* Spell checks in all of the languages that Chromium supports by reusing its dictionaries.
* Support for native macOS and Windows 10 spell checker that are prefered by default.
* Automatically detects the language the user is typing in and silently switches on the fly.
* Handles locale correctly and automatically (i.e. users who are from Australia should not be corrected for 'colour', but US English speakers should)
* Checks very quickly, doesn't introduce input lag which is extremely noticable
* Only loads one Dictionary at a time which saves a significant amount of memory
* Passive mode: don't underline spelling mistakes but you are still able to test for spelling mistakes.
* Custom user dictionary for both Hunspell and macOS.
* Option to ignore a word at runtime only.
* Attach spellchecker to a custom DOM element instead `document.body`.

**Features removed:**

- Dropped support for \<=Electron 4.
- Removed context menus.
- Dropped automatic dictionary download and management.

## Quick Start

```js
import {SpellCheckHandler} from 'electron-spellchecker';

const cacheDir = '';

window.spellCheckHandler = new SpellCheckHandler(cacheDir);
window.spellCheckHandler.attachToInput();

// Start off as US English, America #1 (lol)
window.spellCheckHandler.switchLanguage('en-US');
```

## Language Auto-Detection

The spell checker will attempt to automatically check the language that the user is typing in and switch on-the fly. However, giving it an explicit hint by calling `switchLanguage`, or providing it a block of sample text via `provideHintText` will result in much better results.

Sample text should be text that is reasonably likely to be in the same language as the user typing - for example, in an Email reply box, the original Email text would be a great sample, or in the case of Slack, the existing channel messages are used as the sample text.

## About node-spellchecker

This module uses a fork of Atom's excellent `node-spellchecker` with few modifications. You can find the source [here](https://github.com/fxha/node-spellchecker).
npm package: @hfelix/keyboardevent-from-electron-accelerator
Description: Transform an Electron Accelerator string into a DOM KeyboardEvent.
Author: Andrea
Latest version: 1.1.1

# keyboardevent-from-electron-accelerator

> Transform an Electron Accelerator string into a DOM KeyboardEvent.

This module export a function that take an Electron Accelerator as input
and return a corresponding KeyboardEvent object.

E.g. `'Ctrl+Alt+C' => {code: 'c', ctrlKey: true, altKey: true}`

---

Patched version of `keyboardevent-from-electron-accelerator` to update virtual key codes at runtime.

---

## Usage

This example convert a string containing an Electron Accelerator to a corresponding KeyboardEvent object. Returned object is the keyevent that would be emitted if that key combination was pressed.

```js
const {toKeyEvent} = require('keyboardevent-from-electron-accelerator');
console.log(toKeyEvent('Shift+Delete'));
```

This will output

    {key: 'Delete', shiftKey: true}

## Context and motivation for this module.

This module is part of an ongoing effort to make [electron-localshortcut](https://github.com/parro-it/electron-localshortcut) less error prone, using keyboard DOM listener instead of 'globalShortcut' method to trigger shortcuts handlers.

`electron-localshortcut` will listen for DOM `keydown` and `keyup` events, and will
trigger shortcuts handlers if emitted DOM events match the Accelerator.

This module wrap the core logic of that match operation.

You can help by testing the module on [runkit](https://npm.runkit.com/keyboardevent-from-electron-accelerator) and [opening an issue](https://github.com/parro-it/keyboardevent-from-electron-accelerator/issues/new) if you found some wrong
result.


## API

<!-- Generated by documentation.js. Update this documentation by updating the source code. -->

### toKeyEvent

This function transform an Electron Accelerator string into
a DOM KeyboardEvent object.

**Parameters**

-   `accelerator` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** an Electron Accelerator string, e.g. `Ctrl+C` or `Shift+Space`.

Returns **[object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object)** a DOM KeyboardEvent object derivate from the `accelerator` argument.

## Install

With [npm](https://npmjs.org/) installed, run

    $ npm install keyboardevent-from-electron-accelerator

## See Also

-   [`noffle/common-readme`](https://github.com/noffle/common-readme)

## License

MIT
npm package: @hfelix/spellchecker
Description: Bindings to native spellchecker
Latest version: 4.1.0

# SpellChecker Node Module

Native bindings to [NSSpellChecker](https://developer.apple.com/library/mac/#documentation/cocoa/reference/ApplicationKit/Classes/NSSpellChecker_Class/Reference/Reference.html), [Hunspell](http://hunspell.sourceforge.net/), or the [Windows 10 Spell Check API](https://msdn.microsoft.com/en-us/library/windows/desktop/hh869853(v=vs.85).aspx), depending on your platform. Windows 8.1 and below as well as Linux will rely on Hunspell.

## Installing

```bash
npm install spellchecker
```

## Using

```coffeescript
SpellChecker = require 'spellchecker'
```

### SpellChecker.isMisspelled(word)

Check if a word is misspelled.

`word` - String word to check.

Returns `true` if the word is misspelled, `false` otherwise.

### SpellChecker.getCorrectionsForMisspelling(word)

Get the corrections for a misspelled word.

`word` - String word to get corrections for.

Returns a non-null but possibly empty array of string corrections.

### SpellChecker.add(word)

Adds a word to the dictionary.
When using Hunspell, this will not modify the .dic file; new words must be added each time the spellchecker is created. Use a custom dictionary file.

`word` - String word to add.

Returns nothing.
npm package: @hfghfgdhfgdfhgdhfgd/gatsby-theme-events
Description: ## Quick Start
Author: hfghfgdhfgdfhgdhfgd
Latest version: 1.0.0

# The smallest possible Gatsby theme

## Quick Start

```shell
mkdir my-site
cd my-site
yarn init
# install gatsby-theme-minimal and it's dependencies
yarn add gatsby react react-dom gatsby-theme-minimal
```

Then add the theme to your `gatsby-config.js`. We'll use the long form
here for education purposes.

```javascript
module.exports = {
  plugins: [
    {
      resolve: "gatsby-theme-minimal",
      options: {},
    },
  ],
}
```

That's it, you can now run your gatsby site using

```shell
yarn gatsby develop
```

Note that this site doesn't _do_ anything, so you're see a missing
resources error. Create a simple page in `src/pages/index.js` to see a
page on the root url.

```jsx
import React from "react"

export default () => <div>My Site!</div>
```

## Doing more with themes

You can use this as a place to start when developing themes. I
generally suggest using [yarn
workspaces](https://yarnpkg.com/lang/en/docs/workspaces/) like the
[gatsby-theme-examples repo
does](https://github.com/ChristopherBiscardi/gatsby-theme-examples),
but using `yarn link` or `npm link` is a viable alternative if you're
not familiar with workspaces.
npm package: @hfghfgdhfgdfhgdhfgd/gatsby-theme-minimal
Description: ## Quick Start
Author: christopherbiscardi
Latest version: 1.0.0

# The smallest possible Gatsby theme

## Quick Start

```shell
mkdir my-site
cd my-site
yarn init
# install gatsby-theme-minimal and it's dependencies
yarn add gatsby react react-dom gatsby-theme-minimal
```

Then add the theme to your `gatsby-config.js`. We'll use the long form
here for education purposes.

```javascript
module.exports = {
  plugins: [
    {
      resolve: "gatsby-theme-minimal",
      options: {},
    },
  ],
}
```

That's it, you can now run your gatsby site using

```shell
yarn gatsby develop
```

Note that this site doesn't _do_ anything, so you're see a missing
resources error. Create a simple page in `src/pages/index.js` to see a
page on the root url.

```jsx
import React from "react"

export default () => <div>My Site!</div>
```

## Doing more with themes

You can use this as a place to start when developing themes. I
generally suggest using [yarn
workspaces](https://yarnpkg.com/lang/en/docs/workspaces/) like the
[gatsby-theme-examples repo
does](https://github.com/ChristopherBiscardi/gatsby-theme-examples),
but using `yarn link` or `npm link` is a viable alternative if you're
not familiar with workspaces.