open-index/open-npm huggingface dataset:
npm package: @qiuqfang/get-port
Description: Get an available port
Author: qiuqfang
Latest version: 1.0.0

# @qiuqfang/get-port

Get an available TCP port，Support cjs and esm.

> Get an available [TCP port](<https://en.wikipedia.org/wiki/Port_(computer_networking)>).

## Install

```sh
npm install @qiuqfang/get-port
```

## Usage

```js
import { getPort } from "@qiuqfang/get-port";

console.log(await getPort());
//=> 51402
```

Pass in a preferred port:

```js
import { getPort } from "@qiuqfang/get-port";

console.log(await getPort({ port: 3000 }));
// Will use 3000 if available, otherwise fall back to a random port
```

Pass in an array of preferred ports:

```js
import { getPort } from "@qiuqfang/get-port";

console.log(await getPort({ port: [3000, 3001, 3002] }));
// Will use any element in the preferred ports array if available, otherwise fall back to a random port
```

Use the `portNumbers()` helper in case you need a port in a certain range:

```js
import { getPort, portNumbers } from "@qiuqfang/get-port";

console.log(await getPort({ port: portNumbers(3000, 3100) }));
// Will use any port from 3000 to 3100, otherwise fall back to a random port
```

## API

### getPort(options?)

Returns a `Promise` for a port number.

#### options

Type: `object`

##### port

Type: `number | Iterable<number>`

A preferred port or an iterable of preferred ports to use.

##### exclude

Type: `Iterable<number>`

Ports that should not be returned.

You could, for example, pass it the return value of the `portNumbers()` function.

##### host

Type: `string`

The host on which port resolution should be performed. Can be either an IPv4 or IPv6 address.

By default, it checks availability on all local addresses defined in [OS network interfaces](https://nodejs.org/api/os.html#os_os_networkinterfaces). If this option is set, it will only check the given host.

### portNumbers(from, to)

Generate port numbers in the given range `from`...`to`.

Returns an `Iterable` for port numbers in the given range.

#### from

Type: `number`

The first port of the range. Must be in the range `1024`...`65535`.

#### to

Type: `number`

The last port of the range. Must be in the range `1024`...`65535` and must be greater than `from`.

## Beware

There is a very tiny chance of a race condition if another process starts using the same port number as you in between the time you get the port number and you actually start using it.

Race conditions in the same process are mitigated against by using a lightweight locking mechanism where a port will be held for a minimum of 15 seconds and a maximum of 30 seconds before being released again.

## Related

- [get-port](https://github.com/sindresorhus/get-port) - API for this module
- [get-port-cli](https://github.com/sindresorhus/get-port-cli) - CLI for this module
npm package: @qiuqfang/rollup-plugin-swc
Description: The one plugin uses swc to compile and minimize code in rollup
Author: Quincy Qiu
Latest version: 0.0.12

# rollup-plugin-swc
The one plugin uses swc to compile and minimize code in rollup（这是一个rollup通过swc编译和最小化代码的插件）
npm package: @qius.solutions/qiusflex
Description: QiusFlex - CSS utilities powered by Qius Solutions
Author: Qius Solutions
Latest version: 4.0.7

# ✨ QiusFlex

**QiusFlex** is a lightweight, utility-first CSS library designed to make building responsive and flexible layouts simple and efficient. It provides a collection of ready-to-use classes that help you align, space, and organize your content without the need for writing custom CSS from scratch.

The library focuses on clarity, ease-of-use, and consistency, allowing developers and designers to rapidly prototype or fully build web interfaces with minimal effort. With QiusFlex, you can manage layout, spacing, and alignment in a clean, intuitive way, making your workflow faster and your projects more maintainable.

Whether you’re working on small personal projects or large-scale applications, **QiusFlex** offers a flexible foundation for building modern, responsive web layouts while keeping your CSS lightweight and organized.

It’s perfect for anyone who wants to streamline development, save time, and maintain a clean, readable codebase.
npm package: @qius.solutions/qiusicons
Description: QiusIcons - Icon library powered by Qius Solutions
Author: Qius Solutions
Latest version: 7.1.4

# QiusIcons

**QiusIcons** is a lightweight and modern icon library built on **QiusIcons** — easy to search, filter, and copy icon class names.

---

## ⚡ Features

* 🔍 Search and filter icons by name or category
* 🌗 Light / Dark theme toggle with saved preference
* 📋 One-click copy of icon class names
* ⚡ Responsive and fast

---

## 📦 Install

```bash
npm install @qius.solutions/qiusicons
```

Or explore the source on [GitHub](https://github.com/qius-solutions/qiusicons).

Browse the package on [NPM](https://www.npmjs.com/package/@qius.solutions/qiusicons).

---

## 🖼️ Usage

Include QiusIcons:

```html
<link rel="stylesheet" href="https://unpkg.com/qius.solutions/qiusicons/qiusicons.css">
```

Use icons like:

```html
<i class="pi pi-home"></i>
```
npm package: @qius.solutions/qiusng
Description: **QiusNG** is a modern, full-featured component library built for **Angular**. It provides a complete set of reusable, customizable UI components designed to help developers create beautiful and consistent interfaces with ease.
Latest version: 15.5.8

# ⚡ QiusNG

**QiusNG** is a modern, full-featured component library built for **Angular**.
It provides a complete set of reusable, customizable UI components designed to help developers create beautiful and consistent interfaces with ease.

Focused on performance, accessibility, and simplicity, **QiusNG** allows teams to build Angular applications faster while maintaining a clean and scalable architecture. Each component is thoughtfully designed to follow best practices, ensuring visual harmony and a smooth user experience across devices.

With **QiusNG**, you can focus on building your product instead of reinventing the UI — bringing clarity, flexibility, and power to every Angular project.
npm package: @qiushaocloud-types/qtypings-browser-global
Description: this is an npm package of qiushaocloud typings browser global dts file
Author: qiushaocloud
Latest version: 1.1.6

浏览器环境定义一些全局接口、类型等

### 项目源码
* 自建 gitlab 地址: https://gitlab.qiushaocloud.top/qiushaocloud/npmjs-dts-types-projects
* github 地址: https://github.com/qiushaocloud/npmjs-dts-types-projects

### npm 包
* `tsconfig.json` 引入 @qiushaocloud-types/qtypings-browser-global:`tsconfig.json` 中需要配置`"files":["node_modules/@qiushaocloud-types/qtypings-browser-global/index.d.ts"]`
* 安装 npm 包: `npm install --save-dev @qiushaocloud-types/qtypings-browser-global`

###  TS 定义
#### browser.d.ts
```typescript
declare global {
    interface Window {
        [propName: string]: unknown;
    }

    interface Document {
        [propName: string]: unknown;
    }

    interface Navigator {
        [propName: string]: unknown;
    }
}

export {};
```

#### object.d.ts
```typescript
declare type QJson = Record<string, any>;

declare type QJsonT<T> = Record<string, T>;

declare type QJsonNumber = Record<number, any>

declare type QJsonNumberT<T> = Record<number, T>;
```


#### fn.d.ts
```typescript
/** 任意回调参数的回调函数 */
declare interface QFnAnyArgs{
    (... args:any[]):void;
}

/** 无回调参数的回调函数 */
declare interface QFnEmptyArgs{
    ():void;
}

/** 任意回调参数的回调函数, 返回类型T */
declare interface QFnAnyArgsReturnT<T>{
    (... args:any[]): T;
}

/** 是否成功回调函数 */
declare interface QFnIsSuccess{
    (isSuccess: boolean):void;
}

/** 是否成功回调函数, 第2个参数开始任意回调参数*/
declare interface QFnIsSuccessAnyArgs{
    (isSuccess: boolean, ...args: any[]):void;
}

/** 错误则无result，有result则无错误 */
declare interface QFnErrorOrResult{
    (err: Error | any | void, result?: any, ...args: any[]): void;
}

/** 错误描述回调 */
declare interface QFnErrorDesc{
    (errDesc: string): void;
}
```


#### 开源不易，如果对您有帮助，请您动一动您的小手，给作者点 Star，也请您多多关注分享者「[邱少羽梦](https://www.qiushaocloud.top)」

* 分享者邮箱: [qiushaocloud@126.com](mailto:qiushaocloud@126.com)
* [分享者博客](https://www.qiushaocloud.top)
* [分享者自己搭建的 gitlab](https://gitlab.qiushaocloud.top/qiushaocloud) 
* [分享者 gitee](https://gitee.com/qiushaocloud/dashboard/projects) 
* [分享者 github](https://github.com/qiushaocloud?tab=repositories)
npm package: @qiushaocloud-types/qtypings-nodejs-global
Description: this is an npm package of qiushaocloud typings nodejs global dts file
Author: qiushaocloud
Latest version: 1.1.6

NodeJS 环境定义一些全局接口、类型等

### 项目源码
* 自建 gitlab 地址: https://gitlab.qiushaocloud.top/qiushaocloud/npmjs-dts-types-projects
* github 地址: https://github.com/qiushaocloud/npmjs-dts-types-projects

### npm 包
* `tsconfig.json` 引入 @qiushaocloud-types/qtypings-nodejs-global:`tsconfig.json` 中需要配置`"files":["node_modules/@qiushaocloud-types/qtypings-nodejs-global/index.d.ts"]`
* 安装 npm 包: `npm install --save-dev @qiushaocloud-types/qtypings-nodejs-global`

###  TS 定义
#### nodejs.d.ts
```typescript
declare namespace NodeJS {
    interface Global {
        [propName: string]: any;
    }
}
```

#### object.d.ts
```typescript
declare type QJson = Record<string, any>;

declare type QJsonT<T> = Record<string, T>;

declare type QJsonNumber = Record<number, any>

declare type QJsonNumberT<T> = Record<number, T>;
```

#### fn.d.ts
```typescript
/** 任意回调参数的回调函数 */
declare interface QFnAnyArgs{
    (... args:any[]):void;
}

/** 无回调参数的回调函数 */
declare interface QFnEmptyArgs{
    ():void;
}

/** 任意回调参数的回调函数, 返回类型T */
declare interface QFnAnyArgsReturnT<T>{
    (... args:any[]): T;
}

/** 是否成功回调函数 */
declare interface QFnIsSuccess{
    (isSuccess: boolean):void;
}

/** 是否成功回调函数, 第2个参数开始任意回调参数*/
declare interface QFnIsSuccessAnyArgs{
    (isSuccess: boolean, ...args: any[]):void;
}

/** 错误则无result，有result则无错误 */
declare interface QFnErrorOrResult{
    (err: Error | any | void, result?: any, ...args: any[]): void;
}

/** 错误描述回调 */
declare interface QFnErrorDesc{
    (errDesc: string): void;
}
```


#### 开源不易，如果对您有帮助，请您动一动您的小手，给作者点 Star，也请您多多关注分享者「[邱少羽梦](https://www.qiushaocloud.top)」

* 分享者邮箱: [qiushaocloud@126.com](mailto:qiushaocloud@126.com)
* [分享者博客](https://www.qiushaocloud.top)
* [分享者自己搭建的 gitlab](https://gitlab.qiushaocloud.top/qiushaocloud) 
* [分享者 gitee](https://gitee.com/qiushaocloud/dashboard/projects) 
* [分享者 github](https://github.com/qiushaocloud?tab=repositories)
npm package: @qiushaocloud/browser-qfuncs
Description: this is an npm package of qiushaocloud encapsulation of functional methods
Author: qiushaocloud
Latest version: 1.2.17

### 介绍
主要封装一些功能类方法，用于 browser 环境，例如：deepAssign、deepCopy、isEqualObject、isEqualArray 等

### 项目源码
* 自建 gitlab 地址: https://gitlab.qiushaocloud.top/qiushaocloud/browser-qfuncs-npm-project
* github 地址: https://github.com/qiushaocloud/browser-qfuncs-npm-project

### npm 包
* 安装 npm 包: `npm install --save @qiushaocloud/browser-qfuncs`



#### 开源不易，如果对您有帮助，请您动一动您的小手，给作者点 Star，也请您多多关注分享者「[邱少羽梦](https://www.qiushaocloud.top)」

* 分享者邮箱: [qiushaocloud@126.com](mailto:qiushaocloud@126.com)
* [分享者博客](https://www.qiushaocloud.top)
* [分享者自己搭建的 gitlab](https://gitlab.qiushaocloud.top/qiushaocloud) 
* [分享者 gitee](https://gitee.com/qiushaocloud/dashboard/projects) 
* [分享者 github](https://github.com/qiushaocloud?tab=repositories)
npm package: @qiushaocloud/qesm-nodejs-adapter
Description: this is an npm package of qiushaocloud esm adapter
Author: qiushaocloud
Latest version: 1.0.1

### 介绍
主要用于 NodeJS 环境，ES 模块的适配，例如: __dirname 通过适配的 getImportDirName 获取

### 项目源码
* 自建 gitlab 地址: https://gitlab.qiushaocloud.top/qiushaocloud/npmjs-dts-types-projects
* github 地址: https://github.com/qiushaocloud/npmjs-dts-types-projects

### npm 包
* 安装 npm 包: `npm install --save-dev @qiushaocloud/qesm-nodejs-adapter`

### 插件 TS 定义
``` typescript
declare global {
    const loadImportJSON: <T=any>(filepath: string, importMetaUrl: string) => Record<string, T>;
    const getImportFileName: (importMetaUrl: string) => string;
    const getImportDirName: (importMetaUrl: string) => string;

    // eslint-disable-next-line @typescript-eslint/no-namespace
    namespace NodeJS {
      interface Global {
        loadImportJSON: <T=any>(filepath: string, importMetaUrl: string) => Record<string, T>;
        getImportFileName: (importMetaUrl: string) => string;
        getImportDirName: (importMetaUrl: string) => string;
      }
    }
}

declare module '@qiushaocloud/qesm-nodejs-adapter' {
    export function loadImportJSON <T=any>(filepath: string, importMetaUrl: string): Record<string, T>;
    export function getImportFileName (importMetaUrl: string): string;
    export function getImportDirName (importMetaUrl: string): string;
}

export {};
```

### 插件使用示例
``` javascript
// 使用方式
import '@qiushaocloud/qesm-nodejs-adapter'; // 项目入口处导入即可，然后其它模块就能直接使用

const __dirname = getImportDirName(import.meta.url);
const __filename = getImportFileName(import.meta.url);
const jsonFileContent = loadImportJSON('./config.json', import.meta.url);

console.log('__dirname:', __dirname);
console.log('__filename:', __filename);
console.log('jsonFileContent:', jsonFileContent);
```

#### 开源不易，如果对您有帮助，请您动一动您的小手，给作者点 Star，也请您多多关注分享者「[邱少羽梦](https://www.qiushaocloud.top)」

* 分享者邮箱: [qiushaocloud@126.com](mailto:qiushaocloud@126.com)
* [分享者博客](https://www.qiushaocloud.top)
* [分享者自己搭建的 gitlab](https://gitlab.qiushaocloud.top/qiushaocloud) 
* [分享者 gitee](https://gitee.com/qiushaocloud/dashboard/projects) 
* [分享者 github](https://github.com/qiushaocloud?tab=repositories)
npm package: @qiushaocloud/qfuncs
Description: this is an npm package of qiushaocloud encapsulation of functional methods
Author: qiushaocloud
Latest version: 1.2.8

### 介绍
主要封装一些功能类方法，用于 nodejs 环境，例如：deepAssign、deepCopy、isEqualObject、isEqualArray 等

### 项目源码
* 自建 gitlab 地址: https://gitlab.qiushaocloud.top/qiushaocloud/qfuncs-npm-project
* github 地址: https://github.com/qiushaocloud/qfuncs-npm-project

### npm 包
* 安装 npm 包: `npm install --save @qiushaocloud/qfuncs`



#### 开源不易，如果对您有帮助，请您动一动您的小手，给作者点 Star，也请您多多关注分享者「[邱少羽梦](https://www.qiushaocloud.top)」

* 分享者邮箱: [qiushaocloud@126.com](mailto:qiushaocloud@126.com)
* [分享者博客](https://www.qiushaocloud.top)
* [分享者自己搭建的 gitlab](https://gitlab.qiushaocloud.top/qiushaocloud) 
* [分享者 gitee](https://gitee.com/qiushaocloud/dashboard/projects) 
* [分享者 github](https://github.com/qiushaocloud?tab=repositories)
npm package: @qiushaoxi/hw-app-eosio
Description: Ledger Javascript API for EOSIO.
Author: qiushaoxi
Latest version: 1.0.7

# Ledger javascript API for EOSIO

## Usage

```javascript
require("babel-polyfill"); // problem of TransportNodeHid
const TransportNodeHid = require("@ledgerhq/hw-transport-node-hid").default;
const HwAppEosio = require("@qiushaoxi/hw-app-eosio").default;
//const HwAppEosio = require("../lib/index").default;

async function getPublicKey(index = 0) {
  const transport = await TransportNodeHid.open("");
  const instance = new HwAppEosio(transport);
  const path = `44'/194'/0'/0/${index}`;
  const publicKey = await instance.getPublicKey(path);
  console.log(publicKey);
  await transport.close();
}

async function transaction(index = 0) {
  const transport = await TransportNodeHid.open("");
  const instance = new HwAppEosio(transport);
  const path = `44'/194'/0'/0/${index}`;

  const Eos = require("eosjs");
  const config = {
    chainId: "aca376f206b8fc25a6ed44dbdc66547c36c6c33e3a119ffbeaef943642f0e906",
    httpEndpoint: "https://public.eosinfra.io",
    verbose: false
  };
  config.signProvider = async function({ buf, sign, transaction }) {
    console.log(transaction);
    const sig = await instance.signTransaction(path, transaction, config);
    console.log("sign result:", sig);
    return [sig];
  };

  const eos = Eos(config);

  const txResult = await eos.transaction(tr => {
    tr.transfer("account1", "account2", "0.0001 EOS", "test");
    // tr.transfer('account1', 'account2', '0.0002 EOS', 'test');
  });
  console.log(txResult);

  await transport.close();
}

// getPublicKey(100)
transaction(100);
```
npm package: @qiushaoxi/hw-app-ont
Description: Ledger Javascript API for ONT and NEO.
Author: qiushaoxi
Latest version: 1.0.6

# Ledger javascript API for ONT and NEO

## Usage

```typescript
require("babel-polyfill");
import TransportNodeHid from "@ledgerhq/hw-transport-node-hid";
import HwAppOnt from "@qiushaoxi/hw-app-ont";
import { Crypto, Transaction, utils } from 'ontology-ts-sdk';

export class OntLedgerSigner {
    path: string
    transport: any
    app: any
    constructor(path: string) {
        this.path = path
    }
    async init() {
        this.transport = await TransportNodeHid.open("");
        this.app = new HwAppOnt(this.transport);
    }
    async close() {
        await this.transport.close()
    }
    async sign(transaction: Transaction): Promise<Crypto.Signature> {
        const unsignedData = transaction.serializeUnsignedData();
        const result = await this.app.signMessage(this.path, unsignedData);
        const ontSignature = new Crypto.Signature(Crypto.SignatureScheme.ECDSAwithSHA256, result);
        const signatureHex = ontSignature.serializeHex();
        console.log(signatureHex);
        return ontSignature;
    }
    async getPublicKey(): Promise<Crypto.PublicKey> {
        const publicKeyStr = await this.app.getPublicKey(this.path);
        console.log(publicKeyStr);
        const publicKey = Crypto.PublicKey.deserializeHex(new utils.StringReader(publicKeyStr))
        console.log(publicKey.serializeHex())
        return publicKey;
    }
};
```
npm package: @qiuxc/apifox-to-typescript
Description: 将 Apifox API 转换为 Typescript 请求代码
Author: qiuxchao
Latest version: 0.11.0

# @qiuxc/apifox-to-typescript

将 Apifox API 转换为 Typescript 请求代码

## 安装

```bash
npm install @qiuxc/apifox-to-typescript
```

## 使用

1. 生成配置文件

```sh
npx att init
```

> 生成配置文件后，需要修改配置文件，将 `serverUrl` 修改为你的 Apifox 地址

2. 生成

```sh
npx att
```

> 转换后，会在当前目录生成 `api` 目录
npm package: @qiuxc/eslint-plugin
Description: ESLint plugin for qiuxc.
Author: qiuxchao
Latest version: 0.0.0

# @qiuxc/eslint-plugin

## Installation

You'll first need to install [ESLint](https://eslint.org/):

```sh
pnpm i eslint -D
```

Next, install `@qiuxc/eslint-plugin`:

```sh
pnpm i @qiuxc/eslint-plugin -D
```

## Usage

Add `@qiuxc` to the plugins section of your `.eslintrc` configuration file:

```json
{
    "plugins": [
        "@qiuxc"
    ]
}
```


Then configure the rules you want to use under the rules section.

```json
{
    "rules": {
        "@qiuxc/rule-name": 2
    }
}
```

## Supported Rules

- no-classname-spaces className 中间不能有多余的空格
- no-fun-commnet react 组件内部 function 和 hook 要有注释
npm package: @qiuxc/prettier-config
Description: The prettier config preset.
Author: qiuxchao
Latest version: 0.1.0

# @qiuxc/prettier-config

The prettier config preset.

## Usage

### Install

```
pnpm add -D @qiuxc/prettier-config
```

### Config

In `package.json`

``` json
{
  "prettier": "@qiuxc/prettier-config"
}
```
npm package: @qiuyurs/excel-tools-mcp
Description: 基于MCP协议的Excel操作工具，支持读取、创建和更新Excel文件
Author: 润雨 qiuyurs@163.com
Latest version: 1.0.12

# Excel Tools MCP

基于大模型协议(MCP)的Excel操作工具，提供读取、创建和更新Excel文件的能力。

## 功能特性
- 📄 Excel文件读取（支持多工作表）
- ✏️ Excel文件创建（支持自定义工作表）
- 🔄 Excel文件更新（支持单元格级更新）
- 🤖 兼容MCP协议，可与大模型无缝集成

## 安装方式
```bash
npm install @qiuyurs/excel-tools-mcp -g
```

## MCP配置示例
```json
{
    "mcpServers": {
        "excel-tools": {
            "command": "npx",  
            "args": [  
                "-y",
                "@qiuyurs/excel-tools-mcp"
            ]
        }
    }
}
```

## 构建方式
```shell
npm install
npm run builld
```

## 支持工具

### excel.read
读取Excel文件内容。

#### 输入参数
- `filePath` (string): Excel文件路径。
#### 输出参数
返回数据结构：{content: Array<{type: 'text', text: string}>}, text字段包含 {SheetName: 工作表名称, title: [行号, ...表头], content: [[行号, ...数据行]]}

### excel.create
创建新的Excel文件。

#### 输入参数
- `filePath` (string): Excel文件路径。
- `sheets` (Array<{name: string, title: Array<string>, content: Array<Array<string>>}>): 工作表信息数组。
#### 输出参数
返回数据结构：{content: Array<{type: 'text', text: string}>}, text字段包含 {SheetName: 工作表名称, title: [行号,...表头], content: [[行号,...数据行]]}

### excel.update
更新Excel文件内容。

#### 输入参数
- `filePath` (string): Excel文件路径。
- `sheets` (Array<{name: string, title: Array<string>, content: Array<Array<string>>}>): 工作表信息数组。
#### 输出参数
返回数据结构：{content: Array<{type: 'text', text: string}>}, text字段包含 {SheetName: 工作表名称, title: [行号,...表头], content: [[行号,...数据行]]}

## 项目文档
Github：![https://github.com/qiuyurs/excel-tools-mcp](https://github.com/qiuyurs/excel-tools-mcp)

教程：![https://gwl1554ppni.feishu.cn/wiki/Yi5dw2N8midd8ekDOHOcefNrnVc?fromScene=spaceOverview](https://gwl1554ppni.feishu.cn/wiki/Yi5dw2N8midd8ekDOHOcefNrnVc?fromScene=spaceOverview)