open-index/open-npm huggingface dataset:
npm package: @jeffusion/bungee-llms
Description: Extensible LLM adapters and protocol conversion package for Bungee
Latest version: 3.2.1

# @jeffusion/bungee-llms

Independent LLM adapters and protocol conversion package for Bungee.

## Scope

- Provider-agnostic protocol conversion abstractions
- Adapter registry and conversion service
- Provider catalog and runtime container
- OpenAI/Anthropic/Gemini protocol converters (request/response/stream) centralized in `src/protocol-converters`
- Runtime registration helper `registerDefaultProtocolConverters()` for plugin/wrapper layers

## Usage

```ts
import {
  LLMProtocolAdapterRegistry,
  LLMProtocolConversionService,
  LLMSRuntime,
  registerDefaultProtocolConverters
} from '@jeffusion/bungee-llms';

registerDefaultProtocolConverters();
```

### Plugin/Wrapper Stable Facade

For plugin and wrapper layers, prefer the dedicated stable entrypoint to reduce coupling to internal file layout:

```ts
import {
  type AIConverter,
  ProtocolTransformerRegistry,
  registerDefaultProtocolConverters,
  OpenAIProtocolConversion,
  OpenAIMessagesCompatibilityNormalizer
} from '@jeffusion/bungee-llms/plugin-api';
```
npm package: @jeffusion/bungee-types
Description: TypeScript type definitions for Bungee
Latest version: 3.2.1

# @jeffusion/bungee-types

TypeScript type definitions for [Bungee](https://github.com/jeffusion/bungee) - a high-performance reverse proxy server.

## Installation

```bash
npm install @jeffusion/bungee-types
# or
bun add @jeffusion/bungee-types
```

## Usage

```typescript
import type { AppConfig, RouteConfig, AuthConfig } from '@jeffusion/bungee-types';

const config: AppConfig = {
  routes: [
    {
      path: '/api',
      upstreams: [
        { target: 'http://localhost:3000' }
      ]
    }
  ]
};
```

## Available Types

### Core Configuration Types
- `AppConfig` - Main application configuration
- `RouteConfig` - Route configuration with upstreams and plugins
- `AuthConfig` - Authentication configuration
- `Upstream` - Upstream server configuration

### Modification and Plugin Types
- `ModificationRules` - Request/response modification rules
- `PluginConfig` - Plugin configuration
- `LoggingConfig` - Logging configuration

## Type Exports

### Default Export
```typescript
import type { AppConfig } from '@jeffusion/bungee-types';
```

### Type-Only Export
```typescript
import type { RouteConfig } from '@jeffusion/bungee-types/types';
```

## Documentation

For full documentation, visit [Bungee Documentation](https://github.com/jeffusion/bungee).

## License

MIT
npm package: @jeffwcx/eslint-config
Description: jeffwcx's ESLint config.
Author: jeffwcx
Latest version: 0.6.0

# @jeffwcx/eslint-config

👉 inspector: [eslint-config.jeffwcx.me](https://eslint-config.jeffwcx.me)

## Features

- Format with Prettier
- Designed to work with TypeScript/Node
- Sort
  - Import Statement sort
  - package.json sort
  - tsconfig.json sort
- Framework support
  - Astro

## Usage

```ts
import { config } from '@jeffwcx/eslint-config';

export default config(
  [
    // custom config
  ],
  {
    prettier: true,
    gitignore: true,
    userIgnores: [], // add self defined ignore files
    overrides: {
      typescript: {}, // overrides typescript lint rules
    },
    files: {
      test: [], // self defined `tests` glob
    },
  },
);
```
npm package: @jeffwcx/gitignore
Description: Generate `.gitignore` file.
Author: jeffwcx
Latest version: 0.3.0

# @jeffwcx/gitignore

Generate `.gitignore` file, using [gitignore.io](https://docs.gitignore.io/use/api)

[![asciicast](https://asciinema.org/a/658848.svg)](https://asciinema.org/a/658848)

# Usage

```bash
$ npm install -g @jeffwcx/gitignore

$ gi
```

or

```
npx @jeffwcx/gitignore
```

# Commands

  <!-- commands -->
* [`gi [ENVNAMES]`](#gi-envnames)

## `gi [ENVNAMES]`

Generate `.gitignore` file.

```
USAGE
  $ gi  [ENVNAMES] [-f <value>]

FLAGS
  -f, --file=<value>  [default: ./.gitignore]

DESCRIPTION
  Generate `.gitignore` file.

ALIASES
  $ gi gitignore

EXAMPLES
  Generate `.gitignore` through interactive selection

    $ gi

  Generate the `.gitignore` file in the current directory that adapt to macOS, Windows, Linux, and Node.js
  environments

    $ gi macos,windows,linux,node
```
<!-- commandsstop -->
npm package: @jeffwcx/license
Description: Generate license file.
Author: jeffwcx
Latest version: 0.3.0

# @jeffwcx/license

Generate license file.

```bash
npm install -g @jeffwcx/license

lic
```

or

```bash
npx @jeffwcx/license
```

## Directly generate the specified license

```bash
lic apache
```

This will generate the **Apache License 2.0** License

### Sorting criteria (in descending order of proportion)

- Popularity (Is it widely known?)
- OSI Approved
- FSF Free
- Software
- CC
- Documentation
- Fonts
- Hardware
- Version
- Name Length

## Commands

<!-- commands -->
* [`lic [LICENSE]`](#lic-license)

## `lic [LICENSE]`

Generate license file.

```
USAGE
  $ lic  [LICENSE] [-f <value>] [-p <value>] [-t
    WellKnown|OSI|FSF|CC|Documentation|Fonts|Hardware|Deprecated...]

FLAGS
  -f, --file=<value>      [default: ./LICENSE]
  -p, --pageSize=<value>  [default: 10]
  -t, --tags=<option>...  <options: WellKnown|OSI|FSF|CC|Documentation|Fonts|Hardware|Deprecated>

DESCRIPTION
  Generate license file.

ALIASES
  $ lic license

EXAMPLES
  Select your license file.

    $ lic

  If you dont know which license you should choose, you can use this command to help you choose

    $ lic -i
```
<!-- commandsstop -->
npm package: @jeffwesson/eslint-prettier-config
Description: Eslint and Prettier configuration files
Author: Jeff Wesson
Latest version: 0.0.1

# eslint-prettier-config

Shareable eslint configuration

## Installation

Install (or upgrade) with peer-dependencies:

```sh
npx install-peerdeps -d @jeffwesson/eslint-prettier-config
```

Add `.eslintrc` file:

```json
{
	"extends": ["@jeffwesson/eslint-prettier-config"]
}
```

Add `.prettierrc.js` file (or replace existing `.prettierrc`):

```js
module.exports = require('@jeffwesson/eslint-prettier-config/.prettierrc.js');
```

### Aliases

if you use aliases in your project, e.g.
[webpack aliases](https://webpack.js.org/configuration/resolve/#resolvealias) You will need to set
these up in your eslint configuration too so the import-plugin can resolve your imports.

```json
{
  "settings": {
    "import/resolver": {
      "alias": {
        "map": [["Client", "./client"]],
        "extensions": [".js", ".jsx", ".json"]
      }
    }
  }
```

### Precommit Hook

You may also configure `eslint` and `prettier` to run for every commit:

```sh
npm i -D husky lint-staged
```

Add to `package.json`:

```json
{
	"husky": {
		"hooks": {
			"pre-commit": "lint-staged"
		}
	},
	"lint-staged": {
		"*.js": ["eslint --fix", "git add"],
		"*.{json,scss,css,md,prettierrc,eslintrc,babelrc}": ["prettier --write", "git add"]
	}
}
```

Now `eslint` and `prettier` will run on all files when they are committed.

## Notes

As of this moment eslint does not support loading plugins from the location of the shared config
file. This is why we currently specify required plugins as peer-dependencies. See here for proposal
to remedy and status: [eslint/eslint#10643](https://github.com/eslint/eslint/issues/10643)

## Resources

- https://eslint.org/docs/developer-guide/shareable-configs
npm package: @jeffzo/iterator-utils
Description: Iterator utility functions
Author: jeffzo
Latest version: 0.0.1
Deprecated: WARNING: This project has been renamed to it-utils. Install using it-utils instead.

# iterator-utils

## Description

A direct port of the well-known python builtin library `itertools` and some extra iterator utility functions I find useful. Parts inspired by [itertools.js](https://github.com/nvie/itertools.js).

Some functions are still untested, use with caution.

## TODO

- [ ] finish this README.md
- [ ] more tests
- [x] port all functions from `itertools`
- [ ] as well as `more-itertools` (90%)
- [ ] write JSDocs
- [ ] more iterator utilities I find useful
- [ ] proper docs
- [ ] (optional) implement Rust `std::iter::Iterator` somehow
- [ ] github workflow (WIP)
npm package: @jefko/conversation
Description: Flow graph oriented form navigation, generated from a UML flowchart.
Author: Daniel Jeffery
Latest version: 1.1.0

# Conversation

A module to progammatically and modularly navigate a conversation from a UML flowchart.

## Definitions

**Conversation**
: A collection of potential steps for an end user that's directed by the end user's actions and/or response.

**Step**
: A single set of information and/or questions for an end user that may or may not be required for the conversation.

## Installation

### NPM

`npm install @jefko/conversation`

### Yarn

`yarn install @jefko/conversation`

## Getting Started

1. Create a Mermaid flowchart

   ```mermaid
   flowchart LR
     start([Start]) --continue--> collection[Collect Info]
     collection --validate/submit--> END([End])
   ```

- Only `stadium` nodes without incoming connections will be used as starting points.

2. Ensure each step has a `module` property for handling the step
   `step[|module:./step.mjs|]`

3. Create a conversation instance, handle the navigation events, trigger navigation, etc.

   ```javascript
   import conversation from '@jefko/conversation';

   const convo = conversation({ src: '[path to mermaid UML file]' });

   // Add an event listener
   const listener = (action, step) => {
     if (action === 'done') {
       // The conversation is complete, do whatever is next.
       // step should be undefined
       return;
     }

     if (action === 'continue') {
       // We're continuing the conversation
       // The step may be the same as previous if the step's module returns false for isComplete().
     }

     if (action === 'back') {
       // We're navigating to the previous step
       if (step === undefined) {
         // There's no previous step
       }
     }
   };
   convo.subscribe(listener);

   // Check if the conversation is ready
   const readyToStart = await convo.isReady();

   // Continue to the next step
   const next = await convo.continue();

   // Continue to a specific step
   const specific = await convo.continue('[step ID]');

   // Navigate back to the previous step
   const previous = await convo.back();

   // Render the step
   const output = await convo.render();

   // Remove the listener
   convo.unsubscribe(listener);
   ```
npm package: @jefreesujit/generator-react-basic
Description: Yeoman generator to setup a basic stand-alone React app with Babel and Webpack
Author: Jefree Sujit
Latest version: 1.0.2

# generator-react-basic [![NPM version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Dependency Status][daviddm-image]][daviddm-url] [![Coverage percentage][coveralls-image]][coveralls-url]
> Yeoman generator to setup a basic stand-alone React app with Babel and Webpack

## Generator Includes

 * React App scaffolding with basic "Hello World" app
 * Routing built-in using React-router
 * Babel to convert JSX and ES6
 * Webpack to bundle up things
 * Styles in Sass, with node-sass bundler

## Installation

First, install [Yeoman](http://yeoman.io) and @jefreesujit/generator-react-basic using [npm](https://www.npmjs.com/) (we assume you have pre-installed [node.js](https://nodejs.org/)).

```bash
npm install -g yo
npm install -g @jefreesujit/generator-react-basic
```

Then generate your new project:

```bash
yo @jefreesujit/react-basic
```

## Getting To Know Yeoman

 * Yeoman has a heart of gold.
 * Yeoman is a person with feelings and opinions, but is very easy to work with.
 * Yeoman can be too opinionated at times but is easily convinced not to be.
 * Feel free to [learn more about Yeoman](http://yeoman.io/).

## License

MIT © [Jefree Sujit](https://jefreesujit.github.io)


[npm-image]: https://badge.fury.io/js/generator-react-basic.svg
[npm-url]: https://npmjs.org/package/@jefreesujit/generator-react-basic
[travis-image]: https://travis-ci.org/jefreesujit/generator-react-basic.svg?branch=master
[travis-url]: https://travis-ci.org/jefreesujit/generator-react-basic
[daviddm-image]: https://david-dm.org/jefreesujit/generator-react-basic.svg?theme=shields.io
[daviddm-url]: https://david-dm.org/jefreesujit/generator-react-basic
[coveralls-image]: https://coveralls.io/repos/jefreesujit/generator-react-basic/badge.svg
[coveralls-url]: https://coveralls.io/r/jefreesujit/generator-react-basic
npm package: @jefrydco/craftjs-layers
Description: A Photoshop-like layers panel for your page editor
Author: Prev Wong
Latest version: 0.2.0-beta.4

<div align="center" style={{d}}>
<h1>@craftjs/layers</h1>

<a href="https://www.npmjs.com/package/@craftjs/layers">
  <img src="https://img.shields.io/npm/v/@craftjs/layers?color=%232680eb&label=NPM&logo=npm&logoColor=%232680eb&style=for-the-badge">
</a><img alt="NPM" src="https://img.shields.io/npm/l/@craftjs/layers?color=%23000&style=for-the-badge">
</div>

<div align="center" style={{d}}>
    <img src="https://user-images.githubusercontent.com/16416929/71734439-f2aada00-2e86-11ea-9d5f-c782ccbc8e54.gif"/>
</div>
<p align="center">
  <strong>A Photoshop-like layers panel for your page editor.</strong>
</p>
<p align="center">
  <strong>
    <a href="https://craft.js.org/docs/additional/layers">Documentation</a>
  </strong>
</p>

<p align="center">
  <strong>
    <a href="https://craft.js.org">Craft.js</a>
  </strong>
</p>

> Workaround before this https://github.com/prevwong/craft.js/pull/425 get published

## Usage

```bash
yarn add @craftjs/layers styled-components
```

```jsx
import React from "react";
import {Editor} from "@craftjs/core"
import {Layers} from "@craftjs/layers"

export default function App() {
  return (
    <div style={{margin: "0 auto", width: "800px"}}>
      <Typography variant="h5" align="center">A super simple page editor</Typography>
      <Editor resolver={...}>
        <Layers />
      </Editor>
    </div>
  );
}
```
npm package: @jefth/tinyapi
Description: a api libs for min apps
Author: jefth
Latest version: 0.1.4

# tinyapp-api
重新封装各个小程序端中的API，由 tinyapp 统一对外抛出方法名。


## 安装
npm install @jefth/tinyapi

## 安装指定版本
npm install @jefth/tinyapi@0.1.2

## 更新
npm uninstall @jefth/tinyapi
npm package: @jegan321/openapi-typescript-codegen
Description: Library that generates Typescript clients based on the OpenAPI specification. Fork of ferdikoomen/openapi-typescript-codegen
Author: John Egan
Latest version: 0.25.3

# OpenAPI TypeScript Codegen

Fork of [ferdikoomen/openapi-typescript-codegen](https://github.com/ferdikoomen/openapi-typescript-codegen). See that repository for more documentation.

## List of changes
1. Headers are always optional, whether the OpenAPI JSON says they are required or not.
2. Added an optional config property called `ERROR_CALLBACK` which is a function that will run before API errors are thrown.
3. Ability to run code before or after each request using `BEFORE_REQUEST` and `BEFORE_REQUEST` config

## Testing
1. Run `npm test` to run automated tests
2. If a snapshot test fails due to an intentional change, run `npm run test:update` to update the snapshots
3. To test local changes with your application, first run `npm run build`. Then, replace `npx @jegan321/openapi-typescript-codegen` with `node ../openapi-typescript-codegen/bin/index.js` in your application-side script.

## Release
1. Update package.json with a new version
2. `npm run release`
3. `npm publish`
4. Commit changes