open-index/open-npm huggingface dataset:
npm package: @genx/july
Description: Gen-X JavaScript Utility Library for both Node.js and browser
Author: Rockie Guo
Latest version: 1.2.1

# @genx/july

Gen-X High Performance JavaScript Utility Library for both Node.js and browser

## Installation

```sh
npm install @genx/july
```

## Usage

```js
import { text, naming, url } from '@genx/july';

//3.5x faster than String.replaceAll
text.replaceAll('abcdabcd', 'a', 'b');

naming.pascalCase('agency-client'); //AgencyClient

//https://www.some.com?key=value2&key2=value3
url.appendQuery('https://www.some.com?key=value', {
    key: 'value2',
    key2: 'value3',
});
```

```js
import { remap } from '@genx/july';

// ...
const source = {
    key1: {
        key1_1: {
            key1_1_1: 20,
            key1_1_2: 'test2',
            key1_1_3: 30,
        },
    },
    key2: true,
    key3: 30,
    key4: 'test',
    key5: ['a', 'b'],
};

const remapped = remap(source, {
    key1: [
        'tkey1',
        {
            key1_1: [
                'key1_1',
                {
                    key1_1_1: 'tkey1_1_1',
                    key1_1_3: 'tkey1_1_3',
                },
            ],
        },
    ],
    key3: 'tkey3',
    key5: 'tkey5',
});

mapped.should.be.eql({
    tkey1: {
        key1_1: {
            tkey1_1_1: 20,
            tkey1_1_3: 30,
        },
    },
    tkey3: 30,
    tkey5: ['a', 'b'],
});
```

```js
import { _, eachAsync_, filterAsync_, findAsync_ } from '@genx/july';
// _: lodash
// eachAsync_: like _.each() with async function support
// filterAsync_: like _.filter() with async function support
// findAsync_: like _.find() with async function support
```

## High Benchmark Guidelines

-   Object.hasOwnProperty > Object in (almost the same)

-   Object traversing, lodash.each > for...in > Object.entries.forEach

https://www.measurethat.net/Benchmarks/Show/11499/0/lodash-each-vs-objectentriesforeach-vs-forin

-   Use spread operator instead of Array.concat and Array.push

https://www.measurethat.net/Benchmarks/Show/11501/0/array-concat-vs-spread-operator-vs-push-many
https://www.measurethat.net/Benchmarks/Show/11500/1/array-concat-vs-spread-operator-vs-push-1

-   For readonly traversing, use forEach and map instead of "for" and "for .. of"

https://www.measurethat.net/Benchmarks/Show/11264/0/for-vs-foreach-vs-some-vs-every-vs-forof-vs-map

-   For mutation traversing, use every instead of others, use native every (2.5x faster) instead of lodash every

https://www.measurethat.net/Benchmarks/Show/11265/0/for-vs-foreach-vs-some-vs-every-vs-forof-vs-map-with-mu

-   Object lookup 2.5x faster than Map

https://www.measurethat.net/Benchmarks/Show/11262/0/map-vs-objects

-- fast-deep-equal 4x faster than lodash.isEqual (under node), lodash.isEqual (~2x) > fast-deep-equal (in browser)

https://www.npmjs.com/package/fast-deep-equal
https://www.measurethat.net/Benchmarks/Show/11503/0/lodashisequal-vs-fast-deep-equallodash

## License

MIT
npm package: @genx/sys
Description: Gen-X operating system related utility library for nodejs.
Author: Rockie Guo
Latest version: 0.1.9

# @genx/sys

Gen-X operating system related utility library for nodejs.

## Installation

```sh
npm install @genx/sys
```

## Usage

```js
import { fs, glob, cmd } from '@genx/sys';
```

## API Document

[Check GitHub page](https://genx-tech.github.io/gx-sys)

## License

MIT
npm package: @genxapi/template-kubb
Description: GenX API Kubb template - Adapter for API client generation workflows.
Latest version: 1.2.0

# @genxapi/template-kubb

Kubb-flavoured sibling of the Orval template. This package scaffolds a TypeScript project, wires a multi-client `kubb.config.ts`, and orchestrates `@kubb/cli` so you can automate SDK generation from OpenAPI definitions.

## Highlights

- Generates per-client Kubb projects with opinionated output folders for schemas, types, and HTTP clients.
- Consumes resolved contract inputs from GenX API, including local snapshots for reproducible remote workflows.
- Produces a README tailored to the generated clients with table output.
- Keeps the same configuration shape as the CLI (`project`, `clients`, `hooks`) so it can plug into `@genxapi/cli`.
- Emits generated packages with separate `generate`, `build`, and `publish` scripts plus `genxapi.manifest.json`.

## Usage

```ts
import { generateClients, loadTemplateConfig } from "@genxapi/template-kubb";

const config = await loadTemplateConfig("./genxapi.config.json");
await generateClients(config, { runKubb: true });
```

See `src/types.ts` for the full schema. Each client can tweak Kubb plugin options through the unified `config.plugins` fields that are merged into sensible defaults.

> Heads up: for now this package assumes you will install `@kubb/cli`, `@kubb/core`, `@kubb/plugin-client`, `@kubb/plugin-oas`, and `@kubb/plugin-ts` inside the generated project. The template’s `package.json` already lists them under `devDependencies`.

### Example configuration fragment

```jsonc
{
  "project": {
    "name": "inventory-client",
    "directory": "./clients/inventory",
    "template": "kubb"
  },
  "clients": [
    {
      "name": "items",
      "swagger": "./specs/inventory.yaml",
      "config": {
        "httpClient": "fetch",
        "plugins": {
          "client": {
            "dataReturnType": "data"
          },
          "ts": {
            "enumType": "asConst"
          }
        }
      }
    }
  ]
}
```

Consumers should import the generated package boundary, not internal `src/` or `dist/` files.
npm package: @genxapi/template-orval
Description: GenX API Orval template - Adapter for API client generation workflows.
Latest version: 0.3.0

# @genxapi/template-orval

Reusable Orval template that supports generating multiple clients from a single configuration file. It:

- Loads JSON/YAML config files via `loadTemplateConfig`/`searchTemplateConfig`.
- Scaffolds the bundled template, applies token replacements, and consumes resolved contract inputs from GenX API.
- Generates Orval config and optionally executes Orval + hook scripts.
- Supports optional GitHub sync/pull request and npm publish settings (consumed by the CLI).
- Emits generated packages with separate `generate`, `build`, and `publish` scripts plus `genxapi.manifest.json`.

## Usage

```ts
import { loadTemplateConfig, generateClients } from "@genxapi/template-orval";

const config = await loadTemplateConfig("./orval-multi-client.config.json");
await generateClients(config);
```

### Example

```jsonc
// examples/petstore/genxapi.config.json
{
  "$schema": "https://raw.githubusercontent.com/genxapi/genxapi/main/packages/cli/schemas/genxapi.schema.json",
  "project": {
    "name": "petstore-client",
    "directory": "./examples/petstore/output",
    "template": "orval",
    "repository": {
      "owner": "your-github-handle",
      "name": "petstore-client",
      "pullRequest": {
        "title": "chore: refresh petstore client"
      }
    },
    "publish": {
      "npm": {
        "enabled": true,
        "command": "npm",
        "tag": "latest"
      }
    },
    "readme": {
      "introduction": "Demo SDK generated from the public Petstore API.",
      "additionalSections": [
        {
          "title": "Support",
          "body": "Contact the platform team if you need additional endpoints exposed in this client."
        }
      ]
    }
  },
  "clients": [
    {
      "name": "pets",
      "swagger": "https://petstore3.swagger.io/api/v3/openapi.json",
      "config": {
        "client": "react-query",
        "httpClient": "axios",
        "mock": { "type": "msw", "delay": 300 }
      }
    }
  ]
}
```

## Configuration Highlights

```jsonc
{
  "project": {
    "name": "demo-client",
    "directory": "./clients/demo",
    "template": "orval",
    "repository": {
      "owner": "your-handle",
      "name": "demo-client-repo",
      "pullRequest": { "branchPrefix": "chore/clients" }
    }
  },
  "clients": [
    {
      "name": "pets",
      "swagger": "./specs/petstore.yaml",
      "config": {
        "client": "react-query",
        "httpClient": "axios",
        "mock": { "type": "msw", "delay": 300 }
      }
    }
  ]
}
```

See `samples/orval-multi-client.config.json` for a full example. Consumers should import the generated package boundary, not internal `src/` or `dist/` files.
npm package: @genyus/country-code
Description: Country Data utility Library, ISO Codes etc...
Author: Layton Whiteley
Latest version: 1.0.3

# country-code

[![npm version](https://badge.fury.io/js/%40genyus%2Fcountry-code.svg)](https://badge.fury.io/js/%40genyus%2Fcountry-code)
[![Build Status](https://travis-ci.org/lwhiteley/cc.svg?branch=master)](https://travis-ci.org/lwhiteley/cc)

Country Code utility Library

## Features

- English `name` of the Country
- [ISO 3166-1](https://en.wikipedia.org/wiki/ISO_3166-1_numeric) Country `number`
- [ISO 3166-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) Country Codes
- [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2) Alpha 2 Country Codes

## Installation

\$ npm install @genyus/country-code

## Usage

```javascript
const cc = require('@genyus/country-code');
cc.find({ name: 'Algeria' });
// { name: 'Algeria',
//   alpha2: 'DZ',
//   alpha3: 'DZA',
//   isoNumeric: '012' }

cc.countries.DZA.name; // 'Algeria'

cc.countries.GBR.isoNumeric; //'826'

// nameIncludes
/**
 * options.accuracy {Number}: number from 0 - 1, a percentage of accuracy for the search,
 *                                  default (1 [exactly includes])
 **/
cc.nameIncludes('Trinidad', { accuracy: 0.7 });
/**
 [
  {
    name: 'Trinidad and Tobago',
    alpha2: 'TT',
    alpha3: 'TTO',
    isoNumeric: '780',
  },
 ]
 **/
```

Notes:

- fork and update of [country-code](https://www.npmjs.com/package/country-code)
- pull requests welcome

Breaking changes:

- some country names were renamed with the original values put in a property called `countryName`
npm package: @genzou/random-words
Description: Generate one or more common English words
Author: Thomas Boutell
Latest version: 1.1.2

# random-words

## Generate one or more common English words

`random-words` generates random words for use as sample text. We use it to generate random blog posts when testing [Apostrophe](http://apostrophecms.org).

Cryptographic-quality randomness is NOT the goal, as speed matters for generating sample text and security does not. `Math.random()` is used.

Installation:

    npm install random-words

Examples:

    var randomWords = require('random-words');

    console.log(randomWords());
    army

    console.log(randomWords(5));
    ['army', 'beautiful', 'became', 'if', 'actually']

    console.log(randomWords({ min: 3, max: 10 }));
    ['became', 'arrow', 'article', 'therefore']

    console.log(randomWords({ exactly: 2 }));
    ['beside', 'between']

    console.log(randomWords({ exactly: 5, join: ' ' }))
    'army beautiful became if exactly'
    
    console.log(randomWords({ exactly: 5, join: '' }))
    'armybeautifulbecameifexactly'

    console.log(randomWords({exactly: 5, maxLength: 4}))
    ['army','come','eye','five','fur']

    console.log(randomWords({exactly: 5, minLength: 5, maxLength: 10}))
    ['refused', 'loose', truck', possibly', 'exciting']

    console.log(randomWords({exactly:5, wordsPerString:2}))
    [ 'salt practical', 'also brief', 'country muscle', 'neighborhood beyond', 'grew pig' ]

    console.log(randomWords({exactly:5, wordsPerString:2, separator:'-'}))
    [ 'equator-variety', 'salt-usually', 'importance-becoming', 'stream-several', 'goes-fight' ]

    console.log(randomWords({exactly:5, wordsPerString:2, formatter: (word)=> word.toUpperCase()}))
    [ 'HAVING LOAD', 'LOST PINE', 'GAME SLOPE', 'SECRET GIANT', 'INDEED LOCATION' ]

    console.log(randomWords({exactly:5, wordsPerString:2, formatter: (word, index)=> {
        return index === 0 ? word.slice(0,1).toUpperCase().concat(word.slice(1)) : word;
    }}))
    [ 'Until smoke', 'Year strength', 'Pay knew', 'Fallen must', 'Chief arrow' ]