open-index/open-npm huggingface dataset:
npm package: @sush1sui/dc-boilerplate
Description: A tiny, fast Discord bot boilerplate built for Bun.js — minimal, modern, and ready to publish.
Latest version: 0.1.2

# discord-bun-boilerplate

A tiny, fast Discord bot boilerplate built for Bun.js — minimal, modern, and ready to publish.

Features

- Bun-first: works with `bun run` and `bunx`.
- Command and event loaders (drop-in files).
- Simple CLI shim for running the bot after publishing.

Clone command

```bash
bunx @sush1sui/dc-boilerplate my-bot
```

Quickstart (local)

1. Install dependencies:

```bash
bun install
```

2. Start server:

```bash
# Development (with hot reload)
bun run dev

# Production
bun run start
```

Configuration & Where to edit

- Commands: add files under `src/bot/commands/utility`.
  - Example: `src/bot/commands/utility/ping.ts`
  - Each command should export `data` (a `SlashCommandBuilder`) and `execute(interaction)`.

- Events: add files under `src/bot/events/`.
  - Example: `src/bot/events/ping.ts`.
  - Each event file should export `name`, optional `once`, and `execute(...args)`.

- Bot config and startup: `src/bot/bot.ts` — adjust intents and client options there.

- CLI entry: `bin/cli.ts` — sets `BOT_TOKEN` and imports `src/index.ts`.

Publishing notes

- Ensure `package.json` `bin` field is correct and the `bin/` files are included in the package.
- Consider adding a `.npmignore` or updating `files` in `package.json` to control published files.

License

- MIT
npm package: @sushantdsuwal/react-native-drag
Description: draggable
Author: Sushant Suwal
Latest version: 0.1.3

# react-native-drag

draggable, drag n drop, reanimated-draggable

## Installation

```sh
npm install @sushantdsuwal/react-native-drag
```

![myfile](https://github.com/sushantdsuwal/react-native-drag/blob/main/drag.gif)


## Usage

```js
import Drag from "@sushantdsuwal/react-native-drag";

// ...

<Drag
  height={height} // element height
  width={width} // element width
  x={x} // x position for element
  y={y} // y position for element
  maxHeight={maxHeight} //layout max height
  maxWidth={maxWidth} //layout max width
  onDragEnd={(boxPosition) => {
    const newBoxPosition = {
      ...boxPosition,
      x: boxPosition.x,
      y: boxPosition.y,
      height: boxPosition.height,
      width: boxPosition.width,
    }
  }} // new position of element after drag
>
  <View><Text>Box 1</Text></View>
</Drag>

```



## Contributing

See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.

## License

MIT
npm package: @sushanthkille/backdrop-easy
Description: Provider and hook for Material UIbackdrop
Author: hashslash
Latest version: 1.0.0

# backdrop-easy

## Install

```bash
npm install --save backdrop-easy
```

## Usage

```jsx
import { BackdropProvider } from 'backdrop-easy';

<BackdropProvider progress={<CircularProgress/>}>
        <App />
</BackdropProvider>
```

```jsx
import React from 'react'

import { useBackdrop } from 'backdrop-easy'

const App = () => {
  const [open]=useBackdrop();
  return (
  <div >
    <button onClick={open}>
      Pop
    </button>
  </div>
  );
}
```
npm package: @sushi-ui/su-dropdown
Description: Dropdown component
Author: Rasmus Hallström
Latest version: 1.0.19

# Su-Dropdown

Dropdown component.

### Installing

```
yarn install @sushi-ui/su-dropdown

or

npm install @sushi-ui/su-dropdown
```

### Setup

```javascript
import '@sushi-ui/su-dropdown/lib/su-dropdown.css'
import SuDropdown from '@sushi-ui/su-dropdown'
```

or

```html
<link rel="stylesheet" href="node_modules/@sushi-ui/su-dropdown/lib/su-dropdown.css">
<script src="node_modules/@sushi-ui/su-dropdown/lib/su-dropdown.js"></script>
```

### Getting started

The `.su-Dropdown` and `.su-Dropdown-content` classes are mandatory in the markup.
The `.su-Dropdown-content` element needs to be sibling to the trigger element.
Only the trigger element and the element with class `.su-Dropdown-content` must be inside the `.su-Dropdown` wrapper element.
Feel free to style the `su-Dropdown-content` element.

Minimum HTML markup

```hmtl
<div class="su-Dropdown">
  <button>trigger</button>
  <div class="su-Dropdown-content">
    // dropdown content
  </div>
</div>
```

Create a new dropdown instance

```javascript
const el = document.querySelector('.su-Dropdown')
const dropdown = new SuDropdown(el, options)
```

### Options

| Prop                  | Type                 | Default          | Valid options                                     | Desc                                         |
| --------------------- | -------------------- | ---------------- | ------------------------------------------------- | -------------------------------------------- |
| `offsetX`             | _Number_             | **0**            | Any number                                        | -                                            |
| `offsetY`             | _Number_             | **0**            | Any number                                        | -                                            |
| `padding`             | _Number_             | **16**           | Any number                                        | Padding from boundary element                |
| `boundaries`          | _String,HTMLElement_ | **viewport**     | scrollParent, window, viewport or any DOM element |
| `placement`           | _String_             | **bottom-start** | auto, top, right, bottom, left                    | Option can also have modifier (-start, -end) |
| `closeOnClickInside`  | _Boolean_            | **false**        | true/false                                        | -                                            |
| `closeOnClickOutside` | _Boolean_            | **true**         | true/false                                        | -                                            |

### API

#### toggle()

Show/hide dropdown

#### show()

Show dropdown

#### hide()

Hide dropdown

#### destroy()

Remove all event listeneres from the dropdown component.

### Events

Dispatches from the dropdown node element

#### show

Triggers on show

#### hide

Triggers on show

## License

This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
npm package: @sushibtw/youtubei
Description: Simple package to get information from youtube such as videos, playlists, channels, video information & comments, related videos, up next video, and more!
Author: Vincent Jonathan
Latest version: 0.0.1-rc.17

# Youtubei (WIP)

`Youtubei` is made to replace my other library [scrape-yt](https://github.com/SuspiciousLookingOwl/scrape-yt/). Instead of scrapping data from Youtube page, `youtubei` fetches data by sending a request directly to `https://www.youtube.com/youtubei/v1`, which should be faster and provide more reliable result.

<b>Requires Node >= 12</b>

#### [Documentation](https://youtubei.netlify.app/docs)

## Installation
```
npm i youtubei
```


## Example
```js
const { Client } = require("youtubei");
// or for TS / ES6
import { Client } from "youtubei";

const youtube = new Client();

const run = async () => {
	const videos = await youtube.search("Never gonna give you up", {
		type: "video", // video | playlist | channel | all
	});

	console.log(videos.length); // 20
	const nextVideos = await videos.next(); // load next page
	console.log(nextVideos.length); // 18-20, inconsistent next videos count from youtube
	console.log(videos.length); // 38 - 40

	// you can also pass the video URL
	const video = await youtube.getVideo("dQw4w9WgXcQ");

	const channelVideos = await video.channel.getVideos();
	const channelPlaylists = await video.channel.getPlaylists();

	// you can also pass the playlist URL
	const playlist = await youtube.getPlaylist("UUHnyfMqiRRG1u-2MsSQLbXA");
	console.log(playlist.videos.length); // first 100 videos;
	let newVideos = await playlist.next(); // load next 100 videos
	console.log(playlist.videos.length); // 200 videos;
	await playlist.next(0); // load the rest videos in the playlist
};

run();
```
npm package: @sushichan044/minsaka-csv-parser
Description: An unofficial CSV parser for minsaka supporters data
Author: sushichan044
Latest version: 0.0.8

# @sushichan044/minsaka-csv-parser

> [!CAUTION]
> 本ライブラリは、適法に取得された参加者名簿 CSV を解析するためのツールです。
>
> 個人情報の外部送信・共有機能は含まれません。[ミンサカの利用規約](https://www.sakaseru.jp/mina/agreement/terms-of-service) および関連法令に反する用途（目的外利用・第三者提供等）での使用は禁止されています。
>
> 利用者は自己の責任において適法性を確認の上、本ライブラリを使用してください。

フラスタ・応援広告・贈り物企画プラットフォーム ミンサカ <https://www.sakaseru.jp/mina> で立てた企画の管理画面からダウンロードできる参加者名簿 CSV を構造化されたデータとしてパースするライブラリです。

## Installation

```bash
npm install @sushichan044/minsaka-csv-parser

yarn add @sushichan044/minsaka-csv-parser

pnpm add @sushichan044/minsaka-csv-parser

bun add @sushichan044/minsaka-csv-parser
```

## Usage

`parseAsync` は、CSV の大きさがそれほど大きくない場合に簡単に全体をパースして結果を得るのに適しています。

CSV が大きい可能性がある場合やメモリ使用量を気にする場合は、`parseStream` を使用してください。

詳細なデータ構造は型定義等を参照してください。

### `parseAsync`

```ts
import { readFile } from "node:fs/promises";

import { parseAsync } from "@sushichan044/minsaka-csv-parser";

const csv = await readFile("./supporters.csv", "utf8");
const result = await parseAsync(csv);

if (!result.ok) {
  throw result.error;
}

console.log(result.data);
console.log(result.warnings);
```

### `parseStream`

```ts
import { open } from "node:fs/promises";

import { parseStream } from "@sushichan044/minsaka-csv-parser";

const file = await open("./supporters.csv");
const stream = parseStream(file.readableWebStream());

for await (const result of stream) {
  if (!result.ok) {
    throw result.error;
  }

  console.log(result.data);
  console.log(result.warnings);
}
```
npm package: @sushidesu/trun
Description: npm run with template string
Author: sushidesu
Latest version: 2.0.1

# @sushidesu/trun

npm run with template string.

## Installation

```sh
yarn add -D @sushidesu/trun
# OR
npm install --save-dev @sushidesu/trun
```

## Usage

`trun [command] [arg1] [arg2]...`

| prop | description |
| --- | --- |
| `[command]` | command to run. If you include `{}`, it will be replaced by `args`. |
| `[args]` | string to replace `{}` with. |

TRUN replaces `{}` with `args` and executes command.

### Example

```sh
❯ yarn trun "echo {} and {}" hello world!
yarn run v1.22.15
$ /home/.../node_modules/.bin/trun 'echo {} and {}' hello world!
[trun] echo hello and world!
hello and world!
Done in 0.12s.
```

## Recommended Usage

You can add this to `scripts` in package.json.

### Example


```json
{
  "scripts": {
    "testit": "trun jest \"--testPathPattern={}\"",
  }
}
```

Then, you can flexibly execute npm scripts with a small number of types.

```sh
$ yarn testit some-file
# then execute --->
$ yarn jest --testPathPattern=some-file
```
npm package: @sushidesu/use-filter-select
Description: custom hook for filtering <options>
Author: sushidesu
Latest version: 0.0.1

# @sushidesu/use-filter-select

## Installation

for Yarn

```sh
yarn add @sushidesu/use-filter-select
```

for npm

```sh
npm install --save @sushidesu/use-filter-select
```

## Example

```tsx
import {
  useFilterSelect3Layers,
  jsonToFilterNode3Layers,
} from "@sushidesu/use-filter-select"
import data from "./data.json"

export const App = () => {
  // parse JSON
  const root = jsonToFilterNode3Layers(data)
  // use hook
  const [selects, values, setters] = useFilterSelect3Layers(
    root,
    // set default values (optional)
    {
      layer01: "sapporo",
      layer02: undefined,
      layer03: undefined,
    },
    // set first option (optional)
    {
      value: "",
      label: "Please select !!",
    }
  )

  console.log(values)

  return (
    <div>
      <div>
        {selects.map(({ options, ...props }, i) => (
          <select key={i} {...props}>
            {options.map((opt) => (
              <option key={opt.value} value={opt.value}>
                {opt.label}
              </option>
            ))}
          </select>
        ))}
      </div>
      <button
        onClick={() => {
          setters.setterLayer02("asahikawa")
        }}
      >
        set City to asahikawa
      </button>
    </div>
  )
}
```
npm package: @sushidesu/utils
Description: Summary of frequently written code.
Author: sushidesu
Latest version: 0.1.0

# @sushidesu/utils

Summary of frequently written code.

## Installation

```
npm install --save @sushidesu/utils
```

## Examples

```typescript
import { moveElementOfArrayRelatively } from "@sushidesu/utils"

const array = [0, 1, 2, 3, 4]

console.log(moveElementOfArrayRelatively(array, 2, 2))
// -> [0, 1, 3, 4, 2]
console.log(array)
// -> [0, 1, 2, 3, 4]
```

## License

MIT
npm package: @sushilkumaraitian/mui-daterange-picker
Description: A react date range picker implementation using @mui.
Author: ricard33
Latest version: 1.0.9

# MUI DateRange Picker

A react date range picker implementation using @mui (v5).

<a href='https://www.npmjs.com/package/mui-daterange-picker'>
    <img src='https://img.shields.io/npm/v/mui-daterange-picker.svg' alt='Latest npm version'>
</a>

## Preview

![Screenshot](/screenshot.png?raw=true "Screenshot")

## Live Demo

Check out the project running [here](https://codesandbox.io/s/mui-daterange-picker-playground-for-pb-r9rmn?file=/src/App.js)!

## Usage

```bash
npm install mui-daterange-picker --save

# or with yarn
yarn add mui-daterange-picker
```

## Basic example
```tsx
import React from "react";
import { DateRangePicker, DateRange } from "mui-daterange-picker";

type Props = {}

const App: React.FunctionComponent<Props> = props => {
  const [open, setOpen] = React.useState(false);
  const [dateRange, setDateRange] = React.useState<DateRange>({});

  const toggle = () => setOpen(!open);

  return (
    <DateRangePicker
      open={open}
      toggle={toggle}
      onChange={(range) => setDateRange(range)}
    />
  );
}

export default App;
```

## Types
```ts
interface DateRange {
    startDate?: Date,
    endDate?: Date
}

interface DefinedRange {
    label: string,
    startDate: Date,
    endDate: Date
}
```

## Props

Name | Type                      | Required | Default value | Description
:--- |:--------------------------| :--- | :--- | :---
`onChange` | `(DateRange) => void`     | _required_ | - | handler function for providing selected date range
`toggle` | `() => void`              | _required_ | - | function to show / hide the DateRangePicker
`initialDateRange` | `DateRange`               | _optional_ | `{}` | initially selected date range
`minDate` | `Date` or `string`        | _optional_ | 10 years ago | min date allowed in range
`maxDate` | `Date` or `string`        | _optional_ | 10 years from now | max date allowed in range
`definedRanges` | `DefinedRange[]`          | _optional_ | - | custom defined ranges to show in the list
`closeOnClickOutside` | `boolean`                 | _optional_ | `true` | defines if DateRangePicker will be closed when clicking outside of it
`wrapperClassName` | `object`                  | _optional_ | `undefined` | defines additional wrapper style classes
`locale` | `Locale`  (from date-dns) | _optional_ | `undefined` | defines locale to use (from date-fns package)

## Made possible by

<a href="https://github.com/ricard33/mui-daterange-picker/graphs/contributors">
  <img src="https://contributors-img.web.app/image?repo=ricard33/mui-daterange-picker" />
</a>