open-index/open-npm huggingface dataset:
npm package: @leoswap/dk
Description: 🛠 An SDK for building applications on top of Uniswap V2
Latest version: 1.0.0

# Uniswap V2 SDK

[![Unit Tests](https://github.com/Uniswap/uniswap-v2-sdk/workflows/Unit%20Tests/badge.svg)](https://github.com/Uniswap/uniswap-v2-sdk/actions?query=workflow%3A%22Unit+Tests%22)
[![Lint](https://github.com/Uniswap/uniswap-v2-sdk/workflows/Lint/badge.svg)](https://github.com/Uniswap/uniswap-v2-sdk/actions?query=workflow%3ALint)
[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
[![npm version](https://img.shields.io/npm/v/@uniswap/v2-sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/v2-sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/v2-sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/v2-sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).
npm package: @leothesen/change-case
Description: Recursive functions for changing the case of nested objects.
Author: Leo Thesen
Latest version: 1.3.0

# change-case
Recursive functions for changing the case of object fields. Best

## Install

```bash
npm install @leothesen/change-case
```

## Usage

```js
const { 
  toCamelCase,
  toSnakeCase
} = require('@leothesen/change-case');

const snake_case = {
  mixed_array_field: [
    'text',
    {
      plain_field: 'text',
      mixed_object_field: {
        numeric_field: 42,
        arrary_field: [
          42,
          'fourty two',
          { fourty_two: 42 }
        ]
      }
    }
  ]
};

const camelCase = toCamelCase(snake_case);
/**
 * camelCase = {
 *  plainField: 'text',
 *  mixedObjectField: {
 *    numericField: 42,
 *    arrayField: [
 *      42,
 *      'fourty two',
 *      { fourtyTwo: 42}
 *    ]
 *  }
 * }
 */
```

## License

MIT
npm package: @leothink/test-sdk
Description: test
Latest version: 0.0.1

# @leothink/test-sdk

[![NPM version](https://img.shields.io/npm/v/@leothink/test-sdk.svg?style=flat)](https://npmjs.org/package/@leothink/test-sdk)
[![NPM downloads](http://img.shields.io/npm/dm/@leothink/test-sdk.svg?style=flat)](https://npmjs.org/package/@leothink/test-sdk)

## Install

```bash
$ pnpm install
```

```bash
$ npm run dev
$ npm run build
```

## Options

TODO

## LICENSE

MIT
npm package: @leothorp/jekyll-post
Description: Generate a new post for a jekyll blog with frontmatter.
Author: leothorp
Latest version: 1.0.10

# jekyll-post
Simple CLI for generating a new Jekyll blogpost timestamped at the current date.

### Installation

```
  npm i -g @leothorp/jekyll-post
``` 
Now the cli will be globally available as `jp`. Usage:
```
jp -t "Post title" -c category1,category2
```


  Alternatively, to start using it directly without the global npm installation:
```
  npx @leothorp/jekyll-post -t "Post title" -c category1,category2
``` 

### Assumptions

Expects to be run in a directory containing a `./_posts` folder.


### CLI Options

`-t --title <post title>` Title of the post. Should be wrapped in quotes. (Required)

`-c --categories <category1,category2,category3...>` Comma-separated list of categories. Category names cannot contain spaces.
npm package: @leothorp/mk
Description: Project-level task automation with less typing.
Author: leothorp
Latest version: 0.1.5

# mk

Project-level task automation with less typing.

### What is this?

Essentially this is a more terse version of npm scripts or Make tasks-
a quick way to define arbitrary commands, shortcuts, and script aliases
that are useful in the current directory/project. Like with Make, there's no assumption about what language is being used. an mk.yml file in the project root is the only requirement.

### Installation

via npm (recommended):

```
  npm i -g @leothorp/mk
```

Or for a binary installation that doesn't require Node/npm to already be installed:

```
bash <(curl -sSL https://raw.githubusercontent.com/leothorp/mk/main/scripts/path-install.sh)
```

that runs the `scripts/path-install.sh` script and adds `mk` under `/usr/local/bin`, which
is likely already in your PATH.

### Basic Tasks

Add a file called `mk.yml` at the project root.

This should contain, at minimum, a `tasks` object, a mapping of task names to shell commands.

_Example:_

```
tasks:
  dinner: echo "tomato"
  cra: npx create-react-app new-one
  save-work: git add . && git commit -m
```

Now in the terminal, I can type
`mk dinner`

and see the output `tomato`- as if I'd manually typed `echo "tomato"`.

Any additional arguments are forwarded along to the end of the command.
If I do
`mk save-work "typo"`

It'll be as if I'd typed
`git add . && git commit -m "typo"`
These "partial command" tasks can be useful for repetitive tasks that still have a small manual/unpredictable component.

### External Scripts

Sometimes you have a script that is more involved than a
shell one-liner, so you put it in its own file in in the project. `mk` will automatically detect any .py, .js, or .sh files in a `scripts` directory at the porject root and make those available as tasks, without anything needing to be added to `mk.yml`.
(this script directory path is configurable- see the "Configuration" section below.)

_Example:_
If I create the file `scripts/build.sh`, I can run that script by typing `mk build`.

It's equivalent to if I had added something like this the following to mk.yml. The same goes
for .py and .js scripts.

```
tasks:
  build: bash ./scripts/build.sh
```

### Configuration

`mk.yml` can optionally include a `settings` object, with the
following possible keys.

-`scripts_dir:` Default: `./scripts`
Path to a directory in the project containing script files that should be automatically defined as mk tasks.

-`auto_scripts_enabled:` Default: `true`
This is used to enable/disable the scripts_dir/automatic task functionality.

_Example:_

```
settings:
  auto_scripts_enabled: true
  scripts_dir: "./tools/my-scripts"
```

### CLI commands

-`mk <task> <...args>` Run the given mk task, optionally forwarding
one or more arguments.

-`mk -v, --version` Print version number.
npm package: @leothorp/npm-package-template
Description: baseline npm package example/scaffolder.
Author: leothorp
Latest version: 0.0.34

baseline npm package example/scaffolder.

Usage: 
```
npm exec --prefer-online @leothorp/npm-package-template new-pkg-name
```



notes/references:

-ES6 module reference: https://medium.com/digio-australia/migrating-an-npm-package-to-use-es-modules-d59877963d61
-uses conditional exports: https://nodejs.org/api/packages.html#conditional-exports

-partially modelled after the nanoid package.

-assumes the user will handle compilation for the browser themselves

Steps taken
1. create dir
2. git init
3. npm init
4. edit package.json- license, semver (0.0.1), name (use scoped name if desired), description
5. mkdir src && touch src/main.js index.js
6. touch .gitignore .npmignore
6.5 add stuff to .gitignore (node_modules)
7.  

  "sideEffects": false, if that is the case

8. in package.json:
```
  "type": "module",
``` and add exports for node/browser as appropriate (see package.json here for example)

9. add repo/author to package.json 
10. make gh repo with github cli (assumes public desired, --private if not):

gh repo create --source=. --public --push 

gh repo create command reference: https://cli.github.com/manual/gh_repo_create

11. for cli: 'bin' dir, entrypoint file/package.json entry
12.  echo "{}" > .prettierrc
13. to cut a release: (assumes npm account exists and is logged in via npm login) can use the bash_profile function below, npm-pub. 
example usage: `npm-pub "new commit message"`
```
function npm-pub() {
    npm version patch && \
    npm publish --access public && \
    git push origin HEAD && \
    git push --tags
}
```
npm package: @leotoloza/kernel
Description: Microkernel modular para carga dinámica de módulos.
Author: Leo Toloza
Latest version: 1.0.3

# @leotoloza/kernel

Microkernel modular dinámico para Node.js.  
Permite cargar módulos desde carpetas, emitir y escuchar eventos entre ellos, y organizar la estructura de una aplicación de forma desacoplada.

---

## 🧠 ¿Qué es esto?

Este microkernel fue diseñado para crear aplicaciones modulares en Node.js, donde cada módulo puede tener su propio contexto y lógica interna, sin necesidad de depender directamente de otros.

Los módulos pueden ser detectados y cargados automáticamente desde un directorio, además de comunicarse entre sí mediante un sistema de eventos.

---
## ✨ Características principales

- Carga dinámica de módulos
- Sistema de eventos entre módulos
- Arquitectura desacoplada
- Soporte para rutas personalizadas
- Hot-reloading de módulos

---

## 🚀 Instalación

```bash
pnpm add @leotoloza/kernel
# o
npm install @leotoloza/kernel
# o
yarn add @leotoloza/kernel
```

---

## 🛠️ Uso básico

```typescript
// Ejemplo básico
import Kernel from "@leotoloza/kernel";

const kernel = new Kernel();
await kernel.iniciar();

// Ejemplo con ruta personalizada
import path from "path";
const rutaPersonalizada = path.resolve("src");
const kernel = new Kernel(rutaPersonalizada);
await kernel.iniciar();
```

El kernel puede inicializarse de dos formas:
1. Sin parámetros: cargará los módulos desde la carpeta `/modulos` en la raíz
2. Con ruta personalizada: cargará los módulos desde la ruta especificada

---

## 🐜 Bug fix

- Ahora se puede pasar una ruta por parámetro al inicializar el microkernel, por ejemplo:
```ts
import path from "path";
const ruta = path.resolve("src"); // Esto devuelve la ruta absoluta
```
---

## 📦 Estructura de carpetas esperada

```
/src
  /modulos
    /usuarios
      index.ts       # Punto de entrada del módulo
      Controller.ts  # Controlador del módulo
      Router.ts      # Rutas del módulo
      Model.ts      # Modelo de datos
      Repository.ts  # Repositorio de datos
    /productos
      ...
```

Cada módulo debe tener al menos un archivo `index.ts` como punto de entrada.

## 🛠️ Generador de módulos recomendado

Para facilitar la creación de módulos con una estructura predefinida, te recomendamos instalar la siguiente herramienta CLI:

👉 [lynk-module-generator](https://www.npmjs.com/package/lynk-module-generator)

Esta utilidad permite generar módulos automáticamente con su vista, controlador y configuración base.


Cada subcarpeta representa un módulo que se cargará dinámicamente.

---


## 🧩 Compatibilidad

- Requiere Node.js 16+
- Compatible con módulos ES (type: `"module"` en `package.json`)

---

## 📃 Licencia

[ISC](https://opensource.org/licenses/ISC)
npm package: @leoua/coc-api
Description: Yet another Clash of Clans API, but with TS support
Author: Lasse Brustad
Latest version: 1.0.1

- Fork of [node-coc-api](https://github.com/lbrustad/node-coc-api)

# Clash of Clans API - TypeScript Edition

Okay, I know, there are other APIs that works for NodeJS and web browsers, but I couldn't find any using TS, so I wrote my own one which is fully modular.

## Usage

I written basic test files in the `tests` directory which contains simple-to-understand code in TypeScript, but it's barely any type definitions there, so it looks pretty much like it's pure JavaScript.

## Install

`npm i coc-api` or `npm install coc-api`

## Dependencies

Only `axios`, which is supported by both NodeJS and browsers.
npm package: @leoua/fumo-api
Description: A package to interact with the Fumo API
Author: Vic
Latest version: 3.0.3

This is a fork of the [fumo api](https://github.com/Nosesisaid/fumo-api), but better.

## Added

-   A client class where all functions are passed
-   Cache systems

**Install** with `npm install @leoua/fumo-api` or `yarn add @leoua/fumo-api`

## Example Usage (no cache)

```js
const client = new FumoClient({ cache: false });

(async () => {
    const fumo = await client.fetchRandomFumo();

    console.log(fumo);
})();
```

## Working With Cache

```js
const client = new FumoClient({
    cache: true // Optional, default is set to true
});

// Wait a bit for the fumos to get cached
setTimeout(function () {
    console.log(`Random fumo: ${client.cache.random().URL}`);
}, 2500);
```

## Working With Custom Cache

```js
const myFumos = [
    {
        URL: 'https://tenor.com/view/yuyuko-yuyuko-saigyouji-touhou-fumo-touhou-fumo-gif-25089428',
        _id: 'yuyuko_dead',
        __v: 0,
    },
];

const client = new FumoClient({
    cache: true, // Optional, default is set to true
    customCache: myFumos,
});

console.log(client.cache.random()._id); // yuyuko_dead
```
npm package: @leoud/componentcraft
Description: A set of reusable React components
Latest version: 1.0.6

# React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh

## Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:

- Configure the top-level `parserOptions` property like this:

```js
export default tseslint.config({
  languageOptions: {
    // other options...
    parserOptions: {
      project: ['./tsconfig.node.json', './tsconfig.app.json'],
      tsconfigRootDir: import.meta.dirname,
    },
  },
})
```

- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`
- Optionally add `...tseslint.configs.stylisticTypeChecked`
- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:

```js
// eslint.config.js
import react from 'eslint-plugin-react'

export default tseslint.config({
  // Set the react version
  settings: { react: { version: '18.3' } },
  plugins: {
    // Add the react plugin
    react,
  },
  rules: {
    // other rules...
    // Enable its recommended rules
    ...react.configs.recommended.rules,
    ...react.configs['jsx-runtime'].rules,
  },
})
```