open-index/open-npm huggingface dataset:
npm package: @pneumahealth/pneumahealth-js
Description: A JS library for implementing the PneumaHealth widget - pneumahealth-js is a safe and secure web drop-in module and this library provides a front-end web
Latest version: 1.2.6

# PneumaHealth Widget JavaScript SDK

A JS library for implementing the PneumaHealth widget - PneumaHealthJS is a safe and secure web drop-in module and this library provides a front-end web for tele-medicine and medical consultations.

## Try the demo

Checkout the [React JS Demo](https://replit.com/@PneumaCare/PneumaHealthJS-ReactJS-Demo) or [Static HTML Demo](https://replit.com/@PneumaCare/PneumaHealthJS-HTML-Demo) to view how the PneumaHealth Consults Widget works. _Click "Talk to a Doctor"_ button.

### Installing

Using CDN:

```html
<script src="https://cdn.jsdelivr.net/npm/@pneumahealth/pneumahealth-js@1.2.6/dist/bundle.js"></script>
```

For JS frameworks import it and use:

```js
import PneumaHealthJS from "@pneumahealth/pneumahealth-js";
```

### Usage

```js
PneumaHealthJS.init({
    userId: 'xxxxxxxxxxxxxxx',
    service: "consults", // or "diagnostics",
    businessName: "Test Medical Clinic",
    developerAPIKey: "xxxxxxxxxxxxxxx",
    firebaseConfig: {
        ... //firebase config object goes here
    },
    firebaseUsersCollectionName: "users",
});
```

### PneumaHealthJS.init Options

General
|Name | Type | Required | Description |
|-----------------------|----------------|---------------------|---------------------|
| `userId` | `String` | false | Your patient's ID.
| `developerAPIKey` | `String` | true | Your developer API key.
| `service` | `String` | false | "consults" or "diagnostics".
| `firebaseConfig` | `Object` | true | Config object from your firebase app's console
| `firebaseUsersCollectionName` | `string` | true | Name of your firebase store
| `brandLogo` | `string` | false | Brand logo of your business

> **Note:** By providing the `userId` key, you skip the entire auth flow, similarly, not providing the `userId` key means patients would be required to register / login before access to the widget.

For "CONSULTS" service
|Name | Type | Required | Description |
|-----------------------|----------------|---------------------|---------------------|
| `paystackKey` | `String` | false | Your paystack Public Key.
| `consultationFee` | `String` | false | Amount for Consultation in NGN

> **Note:** Not providing the `paystackKey` means the service would be free. You should add your paystack key to enable payments.

### Adding Firebase

Firebase allows you to implement authentication and file uploads

1: Create a Firebase App. _([Relevant docs](https://cloud.google.com/firestore/docs/create-database-web-mobile-client-library))_

2: Enable Authentication with `email/password` Sign-in method. _([Relevant docs](https://cloud.google.com/appengine/docs/legacy/standard/python/authenticating-users-firebase-appengine))_

2: Enable Firestore. _([Relevant docs](https://cloud.google.com/firestore/docs/create-database-web-mobile-client-library))_

3: Enable Storage. _([Relevant docs](https://firebase.google.com/docs/storage))_

4: Copy the Firebase App Config
npm package: @pnfo/singlish-search
Description: search Sinhala text using Singlish letters
Author: pathnirvana
Latest version: 1.2.7

# singlish-search
This module allows to find all Sinhala words matching a given singlish word. 
This is useful when searching Sinhala content using English letters. For example if a user wants to search for 'නිර්වාන' in Sinhala he may type 'nirvana' in Singlish. This module allows to find all possible Sinhala words that match the given Singlish query such as නිර්වාණ

This tool removes the guesswork needed when figuring out the correct spelling of Sinhala words and allows searching content even when the correct spelling was not used in the content being searched.

## Usage
`getPossibleMatches('singlish-query')`

e.g. `getPossibleMatches('nirvana')` will search find all possible matches

# Roman convert
This allows to convert Sinhala text to the equivalent Roman transliteration and vice versa

## Usage
`sinhalaToRomanConvert('බුද්ධ ජයන්ති ත්‍රිපිටකය')` should give the output `buddha jayanti tripiṭakaya`

`romanToSinhalaConvert('buddha jayanti tripiṭakaya')` should give the output `බුද්ධ ජයන්ති ත්‍රිපිටකය`
npm package: @pngfi/jupiter-core
Description: Jupiter core typescript library
Author: zhengyutay, pngfi
Latest version: 0.5.0

# @pngfi/jupiter-core

Jupiter core typescript library

Same as @jup-ag/core, but integrated with Penguin's pools

# Installation

Yarn
```
yarn add @pngfi/jupiter-core
```

NPM
```
npm install @pngfi/jupiter-core
```

# Usage

```ts
import { Connection, PublicKey } from '@solana/web3.js';
import { Jupiter } from '@pngfi/jupiter-core';
import { Wallet } from '@project-serum/anchor';

const wallet = Wallet.local()
const main = async () => {
    const connection = new Connection('https://solana-api.projectserum.com');
    const wallet = new Wallet
    
    // load Jupiter
    const jupiter = await Jupiter.load({
        connection,
        cluster: 'mainnet-beta',
        user: wallet.payer // or public key
    })

    // RouteMap which map each tokenMint and their respective tokenMints that are swappable
    const routeMap = jupiter.getRouteMap();
    const possibleSOLPairs = routeMap.get('So11111111111111111111111111111111111111112'); // return an array of token mints that can be swapped with SOL

    // Calculate routes for swapping 1 SOL to USDC with 1% slippage
    // routes are sorted based on outputAmount, so ideally the first route is the best.
    const routes = jupiter.computeRoutes(new PublicKey('So11111111111111111111111111111111111111112'), new ublicKey('EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v'), 1_000_000_000, 1);


    console.log('Quoted out amount', routes[0].outAmount);

    // Prepare execute exchange
    const { execute } = await jupiter.exchange({
        route: routes[0]
    })

    // Swap for keypair
    const swapResult = await execute()

    // Swap for publicKey
    // const swapResult = await execute({
    //     wallet: SignerWalletAdapter // from @solana/wallet-adapter-base, mainly need signTransaction and signAllTransactions
    // })

    if (swapResult.error) {
        console.log(swapResult.error)
    } else {
        console.log(swapResult.txid)
        console.log(swapResult.inputAddress)
        console.log(swapResult.outputAddress)
        console.log(swapResult.inputAmount)
        console.log(swapResult.outputAmount)
    }
```
npm package: @pngwasi/node-tantivy-binding-darwin-arm64
Description: Node.js bindings for Tantivy. Provides indexing, querying, and advanced search features with TypeScript support.
Latest version: 0.3.4

# `@pngwasi/node-tantivy-binding-darwin-arm64`

This is the **aarch64-apple-darwin** binary for `@pngwasi/node-tantivy-binding`
npm package: @pngwasi/node-tantivy-binding-darwin-x64
Description: Node.js bindings for Tantivy. Provides indexing, querying, and advanced search features with TypeScript support.
Latest version: 0.3.4

# `@pngwasi/node-tantivy-binding-darwin-x64`

This is the **x86_64-apple-darwin** binary for `@pngwasi/node-tantivy-binding`
npm package: @pngwasi/node-tantivy-binding-linux-x64-gnu
Description: Node.js bindings for Tantivy. Provides indexing, querying, and advanced search features with TypeScript support.
Latest version: 0.3.4

# `@pngwasi/node-tantivy-binding-linux-x64-gnu`

This is the **x86_64-unknown-linux-gnu** binary for `@pngwasi/node-tantivy-binding`
npm package: @pngwasi/node-tantivy-binding-win32-x64-msvc
Description: Node.js bindings for Tantivy. Provides indexing, querying, and advanced search features with TypeScript support.
Latest version: 0.3.4

# `@pngwasi/node-tantivy-binding-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@pngwasi/node-tantivy-binding`
npm package: @pnkbrn/cat-names
Description: this npm package provides the top 100 most adorable and cute cat names randomly.
Author: Andreas Blunk
Latest version: 1.0.3

# cat-names

this npm package provides the top 100 most adorable and cute cat names randomly.

## Install

`npm install @pnkbrn/cat-names`

## API

- getRandomCatName() returns a random cat name
- getAllCatNames() returns an array of all the cute cat names

## Usage

### Library

```
const catNames = require('@pnkbrn/cat-names')
console.log(catNames.getRandomCatName())
```

### CLI

`npx @pnkbrn/cat-names` outputs 1 cat name

`npx @pnkbrn/cat-names 4` outputs 4 cat names