open-index/open-npm huggingface dataset:
npm package: @minadmin/redux-tree-reducer
Description: Tree reducer for redux
Author: pcdummy
Latest version: 0.0.3

# redux-tree-reducer

> Tree reducer for redux

[![NPM](https://img.shields.io/npm/v/redux-tree-reducer.svg)](https://www.npmjs.com/package/redux-tree-reducer) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save redux-tree-reducer
```

## Usage

```tsx
import * as React from "react";

import MyComponent from "redux-tree-reducer";

class Example extends React.Component {
  render() {
    return <MyComponent />;
  }
}
```

## License

MIT © [pcdummy](https://github.com/pcdummy)
npm package: @minakoto00/skills
Description: Convenience installer for skills hosted in minakoto00/vcs-review-flow.
Latest version: 0.1.1

# VCS Review Flow

`VCS Review Flow` is a `skills.sh`-ready repository of skills for reviewing GitHub pull requests and GitLab merge requests through local worktrees. Install the skill you need, then follow the skill-local guide for workflow details.

## Quickstart

Primary install:

```bash
npx skills add minakoto00/vcs-review-flow --skill review-pr
```

Optional shortcut:

```bash
npx @minakoto00/skills install review-pr
```

## Available Skills

- `review-pr`: Review the latest open PR or MR in a dedicated worktree and turn remote feedback into a validated change plan. See `skills/review-pr/README.md`.

## Updates

```bash
npx skills check
npx skills update
```

## Advanced Manual Install

For local development or power users, the repo still includes `install-skill.sh`.

```bash
bash ./install-skill.sh
```

Use `bash ./install-skill.sh --help` for scripted flags and dry-run options.

## Repository Layout

- `skills/review-pr/README.md`: full guide for the `review-pr` skill
- `skills/review-pr/SKILL.md`: skill entrypoint used by agents
- `skills/review-pr/scripts/`: helper scripts used by the skill workflow
- `install-skill.sh`: advanced manual installer
- `bin/skills.js`: npm wrapper for `npx @minakoto00/skills install review-pr`

## License

This repository and the published `@minakoto00/skills` package are available under the MIT License. See `LICENSE`.
npm package: @minamorl/openapi-mcp-bridge
Description: Runtime MCP server that dynamically bridges any OpenAPI 3.x spec to MCP tools
Latest version: 0.1.1

# @minamorl/openapi-mcp-bridge

Runtime MCP server that dynamically bridges any OpenAPI 3.x spec to MCP tools.

**No code generation. No build step. One command.**

## Quick Start

```bash
npx @minamorl/openapi-mcp-bridge --spec https://petstore3.swagger.io/api/v3/openapi.json
```

## Why not codegen?

Existing tools (openapi-mcp-generator, etc.) generate static TypeScript files from your OpenAPI spec. Every time the API changes, you regenerate, rebuild, redeploy.

openapi-mcp-bridge takes a different approach: **runtime bridging**. It reads the OpenAPI spec at startup and dynamically creates MCP tools. Update the spec → restart the server. That's it.

| | Codegen tools | openapi-mcp-bridge |
|---|---|---|
| API spec changes | Regenerate → rebuild → restart | **Restart only** |
| Setup | npm install → generate → configure → build → start | **npx + 1 flag** |
| OAuth2 | "Put token in .env" | Built-in auth flows |
| Transport | stdio only | stdio + Streamable HTTP (planned) |

## Usage

### CLI

```bash
# From URL
openapi-mcp-bridge --spec https://api.example.com/openapi.json

# From local file (JSON or YAML)
openapi-mcp-bridge --spec ./api.yaml

# With auth
openapi-mcp-bridge --spec ./api.yaml --auth-type bearer --auth-token $TOKEN

# With custom base URL
openapi-mcp-bridge --spec ./api.yaml --base-url http://localhost:3000

# With custom headers
openapi-mcp-bridge --spec ./api.yaml -H "X-Custom: value"
```

### Claude Desktop / Cursor config

```json
{
  "mcpServers": {
    "my-api": {
      "command": "npx",
      "args": ["@minamorl/openapi-mcp-bridge", "--spec", "https://api.example.com/openapi.json"]
    }
  }
}
```

### Programmatic API

```typescript
import { parseSpec, createBridgeServer, startStdioServer } from "@minamorl/openapi-mcp-bridge";

const doc = await parseSpec("./api.yaml");
const server = await createBridgeServer({ doc, baseUrl: "http://localhost:3000" });
await startStdioServer(server);
```

## How It Works

```
OpenAPI 3.x spec (JSON/YAML/URL)
        ↓ Parse + resolve $refs
   Tool definitions (name, schema, method, path)
        ↓ Register as MCP tools
   MCP Server (stdio)
        ↓ On tool call
   HTTP request to actual API
        ↓
   Response back to LLM
```

1. **Parser** reads and validates the OpenAPI spec, resolving all `$ref` references
2. **Mapper** converts each operation to an MCP tool with proper input schemas
3. **Server** registers tools and handles MCP protocol
4. **Executor** translates tool calls into HTTP requests

## Auth

```bash
# Bearer token
--auth-type bearer --auth-token YOUR_TOKEN

# API key
--auth-type api-key --auth-token YOUR_KEY --api-key-header X-API-Key

# Basic auth (token = base64 of user:pass)
--auth-type basic --auth-token BASE64_CREDENTIALS
```

## License

MIT
npm package: @minamorl/root-host
Description: RootHost
Latest version: 1.1.7

RootHost

- Subscribes to Core Root and enriches notifications with `seq: bigint`, `ts: string`, `version: 1`, and optional `traceId`/`actor`.
- Fans out to all registered adapters, preserving order per adapter.
- Executes fanout asynchronously and swallows adapter errors to isolate failures.
- Provides `emit()`, `compact()`, and `shutdown()`; `shutdown()` waits for adapters' `drain()`.

Usage sketch:

  import { RootHost } from '@minamorl/root-host';
  import { makeRoot } from '../src/lib/root';
  import { SseAdapter } from '@minamorl/root-adapters/sse';

  const root = makeRoot();
  const sse = new SseAdapter();
  const host = new RootHost(root, [sse]);
  host.emit({ type: 'Create', id: 'x', value: 1 }, { traceId: 't1' });
npm package: @minapp/compiler
Description: 微信小程序源代码编译器
Author: Mora
Latest version: 1.1.0


## 使用

- 所有 srcDir 中的 json 文件支持注释（参考 json5）

### 使用 typescript

### 使用 javascript

- babel-runtime(可选安装)



## TODO

- [ ] postcss-assets 强化(使用 sharp)
- [ ] page 之间不能互相引用！（编译时报错）



## 参考

[awesome](https://github.com/opendigg/awesome-github-wechat-weapp)


### 后台：

- https://github.com/XpmJS/xpmjs （集成后台，简化前台）

### 编译工具：

- https://github.com/Tencent/wepy
- [微信小程序组件化开发框架（很久没更新，可以参考它）](https://github.com/maichong/labrador)
- [用JSX快速开发小程序](https://github.com/haojy/weact)  有一大堆转化列表可以参考：https://github.com/haojy/weact#%E4%BB%8Ejsx%E5%88%B0wxml
- [一款轻巧的渐进式微信小程序框架](https://github.com/tinajs/tina)
- https://github.com/egoist/poi
- https://github.com/parcel-bundler/parcel
- https://github.com/rollup/rollup
- https://github.com/webpack/webpack


### 解析工具：

- https://github.com/seanlong/wxml-parser
- https://github.com/vuejs/babel-plugin-transform-vue-jsx


### vscode 插件：

- https://github.com/vuejs/vetur
- [官方 html 插件](https://github.com/Microsoft/vscode/tree/master/extensions/html)

  * 给插件添加新的 tags:
    - https://github.com/vuejs/vetur/blob/master/docs/intellisense.md
    - https://github.com/OnsenUI/vue-onsenui-helper-json/blob/master/vue-onsenui-tags.json
npm package: @minapp/example-component-ts
Description: wechat example component for minapp
Author: Mora
Latest version: 2.0.0

# To Developer

## 没有用 .npmignore

所有要发布的文件指定在 `package.json` 中的 `files` 字段中


## minapp.json

这是 minapp 的配置文件，用于配置编译相关的选项；详情可以查看 json 中的自动提醒
npm package: @minapp/generator
Description: 微信官方文档解析器，同时生成解析后的结构化的文件
Author: Mora
Latest version: 1.2.0

## 微信官方文档解析器，同时生成解析后的结构化的文件

可以生成 `wx.d.ts`、 `wxp.d.ts` 和 `component.json`，主要用于 minapp 框架
npm package: @minar-kotonoha/babel-plugin-react-directives
Description: A babel plugin that provides some directives for react(any JSX), similar to directive of vue.
Author: chengzhuo5
Latest version: 1.2.3

# @minar-kotonoha/babel-plugin-react-directives

原 git 项目：https://github.com/peakchen90/babel-plugin-react-directives/

本项目是基于原项目的二次开发，配合[@minar-kotonoha/vue-native-core](https://github.com/chengzhuo5/vue-native-core)支持了 v-model 指令。原项目针对 class 组件的 v-model 指令重命名为 v-model-class。

如果不使用@minar-kotonoha/vue-native-core，此项目也能正常运行。

## 使用说明

```javascript
// babel.config.js
{
  plugins: [
    [
      "@minar-kotonoha/babel-plugin-react-directives",
      {
        prefix: "v",
        pragmaType: "React"
      }
    ]
  ];
}
```

```javascript
// Vue组件
import React from "react";
import { constructor } from "@minar-kotonoha/vue-native-core";

export default constructor({
  data() {
    return {
      input: "hhh"
    };
  },
  render() {
    return (
      <div>
        <div>{this.input}</div>
        <input v-model={this.input} />
      </div>
    );
  }
});
```

```javascript
// React-class组件
import React, { Component } from "react";
class Test extends Component {
  state = { data: "" };
  render() {
    return (
      <div>
        <div>{this.state.data}</div>
        <input v-model-class={this.state.data} />
      </div>
    );
  }
}
```
npm package: @minar-kotonoha/babel-plugin-strip-function
Description: Babel plugin that replaces any function call with an empty function.
Author: azu
Latest version: 1.0.1

# @minar-kotonoha/babel-plugin-strip-function

Babel插件，用于移除函数调用或替换为空函数。

此插件支持两种模式：

- `remove`：完全移除匹配的函数调用
- `empty`：将匹配的函数调用替换为空函数

类似于 [yahoo/strip-loader](https://github.com/yahoo/strip-loader)，但提供了更多灵活性，同时支持移除和替换选项。

## 安装

使用 [npm](https://www.npmjs.com/) 安装：

    npm install @minar-kotonoha/babel-plugin-strip-function --save-dev

## 使用方法

通过 `.babelrc` 配置：

```json
{
  "plugins": [
    ["@minar-kotonoha/babel-plugin-strip-function", {
        "remove": [
            "debug"
        ],
        "empty": [
            "console.log",
            "logger.info"
        ]
    }]
  ]
}
```

仅在生产环境中使用：

```json
{
  "presets": [
    "es2015"
  ],
  "env": {
    "production": {
        "plugins": [
            ["@minar-kotonoha/babel-plugin-strip-function", {
                "remove": [
                    "debug"
                ],
                "empty": [
                    "console.log",
                    "logger.info"
                ]
            }]
        ]
    }
  }
}
```

## 选项

- `remove`: `string[]`
  - 指定要完全移除的函数名称
- `empty`: `string[]`
  - 指定要替换为空函数的函数名称

### 示例

#### 移除函数调用

```js
["@minar-kotonoha/babel-plugin-strip-function", {
    "remove": [
        // 不要包含 ()
        "console.log"
    ]
}]
```

#### 替换为空函数

```js
["@minar-kotonoha/babel-plugin-strip-function", {
    "empty": [
        // 不要包含 ()
        "console.log"
    ]
}]
```

#### 同时使用两种选项

```js
["@minar-kotonoha/babel-plugin-strip-function", {
    "remove": [
        "debug"
    ],
    "empty": [
        "console.log",
        "logger.info"
    ]
}]
```

### 注意事项

- 模式默认不匹配计算属性调用，如 `console["log"]()`。
- 支持通配符模式，例如 `"*.log"` 将匹配 `console.log` 和 `Application.logger.log`。

## 运行测试

安装开发依赖并运行 `npm test`：

    npm i -d && npm test
npm package: @minar-kotonoha/createes
Description: The ES Module version of CreateJS
Author: Minar Kotonoha
Latest version: 1.0.1

# CreateES
ES Module version of CreateJS

CreateJS is no longer maintained, however it's still widely used to render AdobeAn SVG animations on the web. The original CreateJS NPM package was not poperly exported for being used as a CommonJS or ES module, so to avoid implementing workarounds in different module bundlers to make it work, I decided to create this litte wrapper for it.
npm package: @minar-kotonoha/eslint-plugin-react-directives
Description: some rules for babel-plugin-react-directives.
Author: chengzhuo5
Latest version: 1.0.3

# @minar-kotonoha/eslint-plugin-react-directives

原 git：https://github.com/peakchen90/eslint-plugin-react-directives

本项目是基于原项目的二次开发，配合[@minar-kotonoha/babel-plugin-react-directives](https://github.com/chengzhuo5/babel-plugin-react-directives)修改了前缀规则。
npm package: @minar-kotonoha/generator-generator
Description: Generate a Yeoman generator
Author: Yeoman team
Latest version: 4.0.2

# generator-generator [![Build Status](https://secure.travis-ci.org/yeoman/generator-generator.svg?branch=master)](https://travis-ci.org/yeoman/generator-generator) [![Coverage Status](https://coveralls.io/repos/yeoman/generator-generator/badge.svg?branch=master&service=github)](https://coveralls.io/github/yeoman/generator-generator?branch=master)


> Yeoman generator generating a Yeoman generator

![Yo dawg, I heard you like generators?](http://i.imgur.com/2gqiift.jpg)


## Getting started

- Install: `npm install -g generator-generator`
- Run: `yo generator`


## Commands

* `yo generator` shows a wizard for generating a new generator
* `yo generator:subgenerator <name>` generates a subgenerator with the name `<name>`


## What do you get?

Scaffolds out a complete generator directory structure for you:

```
.
├── generators/
│   └── app/
│       ├── index.js
│       └── templates/
│           └── dummyfile.txt
├── .editorconfig
├── .eslintignore
├── .gitattributes
├── .gitignore
├── .travis.yml
├── .yo-rc.json
├── LICENSE
├── README.md
├── package.json
└── __tests__/
    └── app.js
```

Refer to [our documentation](http://yeoman.io/authoring/) to learn more about creating a Yeoman generator.

### Running tests

Run `npm test` to run your test suite.

These tests will be run automatically in your git repository if you connect [Travis CI](https://travis-ci.org/profile). You can also track test coverage using [Coveralls](https://coveralls.io).

## Contributing

See the [contribution docs](http://yeoman.io/contributing/).

When submitting an issue, please follow [the
guidelines](http://yeoman.io/contributing/opening-issues.html).
It is especially important to make sure Yeoman is up-to-date, and providing the
command or commands that cause the issue.


## License

MIT © Pascal Hartig <phartig@rdrei.net> and other contributors
npm package: @minar-kotonoha/generator-jest
Description: Add jest support to any projects
Author: Simon Boudrias
Latest version: 1.8.0

# generator-jest [![NPM version][npm-image]][npm-url] [![Dependency Status][daviddm-image]][daviddm-url] [![Coverage percentage][codecov-image]][codecov-url]

> Add jest support to any projects

## Installation

First, install [Yeoman](http://yeoman.io) and generator-jest using [npm](https://www.npmjs.com/) (we assume you have pre-installed [node.js](https://nodejs.org/)).

```bash
npm install -g yo generator-jest
```

Then generate your new project:

```bash
yo jest
```

Once done, you can run tests using `npm test`.

To generate tests for your components, you can then run:

```bash
yo jest:test path/to/file-to-test.js

# (optional) You can specifically define your component name
yo jest:test path/to/file-to-test.js --componentName=useThisName
```

## Include generator-jest in your own generator

`generator-jest` is built to create as minimum overhead as possible when including in your own generators.

First, install `generator-jest` as a dependency of your own generator.

```bash
npm install --save generator-jest
```

Then call it from your generator.

```js
this.composeWith(require.resolve('generator-jest/generators/app'), {
  testEnvironment: 'jsdom', // (optional) pass one of jsdom or node
  coveralls: true // (optional) send coverage reports to coveralls
});

this.composeWith(require.resolve('generator-jest/generators/test'), {
  filepath: 'components/Sidebar.jsx'
  componentName: 'SideBar' // (optional) define the component name
});
```

Note: Tests generated by `jest:test` will fail by default. Users should implement relevant tests.

## License

MIT © [Simon Boudrias](https://github.com/SBoudrias)

[npm-image]: https://badge.fury.io/js/generator-jest.svg
[npm-url]: https://npmjs.org/package/generator-jest
[daviddm-image]: https://david-dm.org/SBoudrias/generator-jest.svg?theme=shields.io
[daviddm-url]: https://david-dm.org/SBoudrias/generator-jest
[codecov-image]: https://codecov.io/gh/SBoudrias/generator-jest/branch/master/graph/badge.svg
[codecov-url]: https://codecov.io/gh/SBoudrias/generator-jest
npm package: @minar-kotonoha/inquirer-npm-name
Description: Helper function using inquirer to validate a value provided in a prompt does not exist as an npm package.
Author: Simon Boudrias
Latest version: 3.0.0

# inquirer-npm-name [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][daviddm-image]][daviddm-url] [![Coverage percentage][coveralls-image]][coveralls-url]

Helper function using [inquirer](https://github.com/SBoudrias/Inquirer.js) to
validate a value provided in a prompt does not exist as a npm package.

The supplied value must be a valid package name (as per
[validate-npm-package-name]); otherwise, the user will again be prompted to
enter a name.

If the value is already used as a npm package, then the users will be prompted
and asked if they want to choose another one. If so, we'll recurse through the
same validation process until we have a name that is unused on the npm registry.
This is a helper to catch naming issue in advance, it is not a validation rule
as the user can always decide to continue with the same name.

## Install

```sh
$ npm install --save inquirer-npm-name
```

## Usage

```js
var inquirer = require('inquirer');
var askName = require('inquirer-npm-name');

askName(
  {
    name: 'name',
    message: 'Some Module Name' // Default: 'Module Name'
  },
  inquirer
).then(function(answer) {
  console.log(answer.name);
});

// Equivalent to {name: 'name'}
askName('name', inquirer).then(function(answer) {
  console.log(answer.name);
});
```

Inside a **Yeoman Generator** you'd call it this way:

```js
var generators = require('yeoman-generator');
var inquirer = require('inquirer');
var askName = require('inquirer-npm-name');

module.exports = generators.Base.extend({
  prompting: function() {
    return askName(
      {
        name: 'name',
        message: 'Module Name'
      },
      this
    ).then(function(name) {
      console.log(name);
    });
  }
});
```

`askName` takes 2 parameters:

1. `prompt` an [Inquirer prompt configuration](https://github.com/SBoudrias/Inquirer.js#question)
   or just a string to serve as name.
2. `inquirer` or any object with a `obj.prompt()` method.

**Returns:** A `Promise` resolved with the answer object.

## License

MIT © [Simon Boudrias](http://twitter.com/vaxilart)

[validate-npm-package-name]: https://npmjs.org/package/validate-npm-package-name
[npm-image]: https://badge.fury.io/js/inquirer-npm-name.svg
[npm-url]: https://npmjs.org/package/inquirer-npm-name
[travis-image]: https://travis-ci.org/SBoudrias/inquirer-npm-name.svg?branch=master
[travis-url]: https://travis-ci.org/SBoudrias/inquirer-npm-name
[daviddm-image]: https://david-dm.org/SBoudrias/inquirer-npm-name.svg?theme=shields.io
[daviddm-url]: https://david-dm.org/SBoudrias/inquirer-npm-name
[coveralls-image]: https://coveralls.io/repos/SBoudrias/inquirer-npm-name/badge.svg
[coveralls-url]: https://coveralls.io/r/SBoudrias/inquirer-npm-name