open-index/open-npm huggingface dataset:
npm package: @neoxr/quote-api
Description: Quote Generator by LyoSU
Author: Wildan Izzudin
Latest version: 1.1.1-dev

## Quote Generator

> This package comes from [LyoSU - Quote API](https://github.com/LyoSU/quote-api) which I modified slightly.

### Example

```Javascript
const quoteApi = require('@neoxr/quote-api')
const fs = require('node:fs')

const text = "Hello World"
const username = "Alι_Aryαɴ"
const avatar = "https://telegra.ph/file/59952c903fdfb10b752b3.jpg"

const json = {
  "type": "quote",
  "format": "png",
  "backgroundColor": "#FFFFFF",
  "width": 512,
  "height": 768,
  "scale": 2,
  "messages": [
    {
      "entities": [],
      "avatar": true,
      "from": {
        "id": 1,
        "name": username,
        "photo": {
          "url": avatar
        }
      },
      "text": text,
      "replyMessage": {}
    }
  ]
}

quoteApi(json).then(res => {
   const buffer = Buffer.from(res.image, 'base64')
      fs.writeFile('Quotly.png', buffer, (err) => {
      if (err) throw err
   })
})
```
npm package: @neoxr/xendit
Description: Simple Xendit API Wrapper
Author: Wildan Izzudin
Latest version: 1.1.2

## Simple Xendit API Wrapper

> Unofficial Xendit API Wrapper yang hanya tersedia untuk 3 metode pembayaran : QRIS, Virtual Account & E-Wallet.

### Instalasi

```Javascript
const { Xendit } = require('@neoxr/xendit')
const xnd = new Xendit({
   keys: 'xnd_xxxxx_xxxxxx',
   prefix: 'NXR',
   success_callback_url: 'https://example.com/payment-success',
   failure_callback_url: 'https://example.com/payment-failure',
   callback_with_id: false,
   expiration: 30, // 30 minutes
})
```

### Membuat Pembayaran

Untuk membuat pembayaran dengan API Xendit cukup dengan memasukan 2 parameter wajib dan 1 parameter opsional :

```Javascript
xnd.createPayment([amount], [channel], [metadata])
```

1. `amount` : nominal tagihan dengan tipe data integer.

2. `channel` : channel metode pembayaran dengan tipe data string.

3.  `metadata` (opsional) : menambahkan informasi tagihan dengan tipe data object.

#### Contoh :

```Javascript
xnd.createPayment(50000, 'qris').then(console.log)
```

Live Response : [Here](https://neoxr.my.id/xnd/create-payment?amount=50000&channel=qris)


### Cek Status Pembayaran

```Javascript
xnd.checkPayment([id])
```

#### Contoh :

```Javascript
xnd.checkPayment('pr-0d008ec2-0b94-452c-a9a2-becbf7bedf53').then(console.log)
```
Live Response : [Here](https://neoxr.my.id/xnd/check-payment?id=pr-0d008ec2-0b94-452c-a9a2-becbf7bedf53)


### Menampilkan Saldo

Menampilkan saldo yang sudah terkumpul di Xendit :D

```Javascript
xnd.balance().then(console.log)
```

Live Response : [Here](https://neoxr.my.id/xnd/balance)


### Menampilkan Daftar Transaksi

Menampilkan daftar riwayat transaksi

```Javascript
xnd.transaction(10).then(console.log)
```

Live Response : [Here](https://neoxr.my.id/xnd/transaction)

### Disbursement

Disbursement ini berfungsi untuk membuat layanan top up e-wallet, berikut adalah daftar e-wallet yang di dukung : **ovo, dana, gopay & shopeepay**

#### Membuat Disbursement

```Javascript
xnd.disbursement({
   type: 'CREATE',
   data: {
      amount: 55000,
      product_code: 'dana',
      number: 085887776722,
      description: 'Thanks, for making topup.'
   }
})
```

Live Response : [Here](https://neoxr.my.id/xnd/create-disbursement?number=085887776722&amount=55000&product=dana)

#### Cek Status Disbursement

```Javascript
xnd.disbursement({
   type: 'CHECK',
   data: {
      id: '65d0bcd77b03cebd0609fcc1'
   }
})
```

Live Response : [Here](https://neoxr.my.id/xnd/check-disbursement?id=65d0bcd77b03cebd0609fcc1)

### Daftar Channel

Pastikan akun sudah live atau terverifikasi dan channel metode pembayaran berstatus aktif.

1. **Qris** : qris

2. **Virtual Account** : bri, mandiri, bni, permata, bca, bss, cimb, bjb, bsi

3. **E-wallet** : ovo, dana, linkaja, shopeepay, astrapay
npm package: @neoxr/youtube-scraper
Description: https://tomp3.cc scraper
Author: Wildan Izzudin
Latest version: 3.1.5

## Youtube Scraper

> Simple youtube scraper with fast download

### How to use ??

```Javascript
const { Youtube } = require('@neoxr/youtube-scraper')
const yt = new Youtube({
   fileAsUrl: false
})

// download audio (only 128kbps)
yt.fetch('https://youtu.be/rzk4mUgDjC8?si=U9L8ev0FAjYxPF9H').then(console.log)

// download video
yt.fetch('https://youtu.be/rzk4mUgDjC8?si=U9L8ev0FAjYxPF9H', 'video', '480p').then(console.log)

// download audio by query (only 128kbps)
yt.play('wide awake').then(console.log)

// download video by query
yt.play('wide awake', 'video', '480p').then(console.log)
```

### Example with Proxy

> This library maybe works on a few servers, recomend to use Singapure or Indonesia Proxy

```Javascript
const { Youtube } = require('@neoxr/youtube-scraper')
const yt = new Youtube({
   fileAsUrl: false,
   proxy: {
      host: '1.2.3.4',
      port: 8080
   }
})
```
npm package: @neozenith/eslint-config
Description: Shareable esLint config
Author: Josh Peak
Latest version: 3.0.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# ESLint Config

Shareable ESLint Configuration to [apply coding standards][using-eslint] across javascript development.

<a href="https://xkcd.com/1513/">
<img
  src="https://imgs.xkcd.com/comics/code_quality.png"
  alt="Code Quality" 
/>
</a>

[using-eslint]: https://medium.com/the-node-js-collection/why-and-how-to-use-eslint-in-your-project-742d0bc61ed7

----
# Getting Started

## Installation

Install peer dependencies and install the eslint configuration:

```bash
npm install --save-dev eslint prettier eslint-plugin-prettier eslint-config-prettier
npm install --save-dev @neozenith/eslint-config
echo "**/node_modules/**" >> .eslintignore
```

## Configuration

### Basic Configuration

Then add the following to your `package.json`:

```json
{
  "eslintConfig":{ "extends": "@neozenith" }
}
```

Well that seems really simple right? And everyone gets the same rules, no excuses.

### Advanced Configuration

In future, environment specific rules, would be specified as below: 

```json
  "eslintConfig":{
    "extends":[
      "@neozenith",
      "@neozenith/eslint-config/node"
    ]
  }
}
```

### Scripts

Finally you'll want to add the following scripts to your `package.json`. 

```json
{

  "scripts": {
    "test:lint:all":"./node_modules/.bin/eslint --ignore-path .",
    "test:lint":"npm run test:lint -- --quiet",
    "test:lint:fix":"npm run test:lint -- --fix",
    "pretest":"npm run test:lint"
  }
}
```

 - `test:lint:all` - this will run `eslint` as per usual outputting all errors and warnings
 - `test:lint` - including the `--quiet` flag reduces `eslint`'s output to errors only
 - `test:lint:fix` - this fixes all errors that are _auto-fixable_ such as formatting issues that do not impact the semantics of the code. All `prettier` rules are always _auto-fixable_.
 - `pretest` - By running this before your tests it will enforce linting and halt on any errors preventing `npm test` from actually running until linting is satisfied. You may want to update this to `test:lint:all` so that it breaks on warnings too. 

----
# Maintaining

```bash
# Bump version number according to changes
npm version [major|minor|patch]

# Publish a public scoped repository
npm publish
```