open-index/open-npm huggingface dataset:
npm package: @ssaeng/mcp-golang
Description: DigitalOcean MCP Implementation,
Author: DigitalOcean
Latest version: 0.0.7

# NPM Wrapper Script 

inspired by https://github.com/Azure/azure-mcp/blob/main/eng/npm/wrapper/index.js

Wrapper script that runs the mcp server as a child process and pipes the output to the console.

## Debugging

```
 DIGITALOCEAN_API_TOKEN=your_do_token npm run mcp-digitalocean
```
npm package: @ssaitho/react_ts_storybook
Description: react.js / typescript / storybook で構築したテストコンポーネントカタログです。 色々触って試す場所になります。 コンポーネントは使用できるレベルのものでは無いのでご了承ください。
Latest version: 0.2.50-alpha.0

# react_ts_storybook

react.js / typescript / storybook で構築したテストコンポーネントカタログです。
色々触って試す場所になります。
コンポーネントは使用できるレベルのものでは無いのでご了承ください。

## Dependencies

```
Node.js
v18.17.0(24/1/26更新)

yarn
1.22.19
```

## Installation npm

```bash
npm install @ssaitho/react_ts_storybook
```

```bash
yarn add @ssaitho/react_ts_storybook
```

## Installation storybook

```bash
yarn install
```

```bash
yarn storybook
```

## ESLint

```bash
yarn lint
```

```bash
yarn lint:fix
```

## Prettier

```bash
yarn format
```

## Icon

### 新規アイコン追加手順

1. svg ファイル（24px × 24px）を`src/components/Icon/svg/`に格納。
2. ターミナルで

```bash
yarn icons
```

3. `src/components/Icon`配下に icon の tsx ファイルが生成されます。

## browser

- http://localhost:6006
npm package: @ssalka/coinvert
Description: Node.js CLI for quick and easy cryptocurrency conversions
Author: Steven Salka
Latest version: 0.1.1

# coinvert
Node.js CLI for quick and easy cryptocurrency conversions

[![npm (scoped)](https://img.shields.io/npm/v/@ssalka/coinvert.svg)](https://www.npmjs.com/package/@ssalka/coinvert)
[![CircleCI](https://img.shields.io/circleci/project/github/RedSparr0w/node-csgo-parser.svg)](https://circleci.com/gh/ssalka/coinvert)

## Installation
coinvert is made available for install through NPM:

```
npm install -g @ssalka/coinvert

// or

yarn global add @ssalka/coinvert
```

## Usage

### CLI
coinvert performs a simple async request to fetch the current conversion price for a given pairing, and performs the conversion on a given amount:

```sh
coinvert 1 USD to USDT
> 1 USD = 1 USDT
```

### Named Export
```ts
import { coinvert } from '@ssalka/coinvert';

coinvert(1, 'USD', 'USDT').then(console.log); // 1
```
npm package: @ssamaresh1990/use-star-wars-api
Description: A custom react hook that provides Star Wars Data
Author: ssamaresh
Latest version: 1.0.0

# @ssamaresh1990/use-star-wars-api

> A custom react hook that provides Star Wars Data

[![NPM](https://img.shields.io/npm/v/@ssamaresh1990/use-star-wars-api.svg)](https://www.npmjs.com/package/@ssamaresh1990/use-star-wars-api) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @ssamaresh1990/use-star-wars-api
```

## Usage

```jsx
import React from 'react'
import { useStarWarsAPI } from '@ssamaresh1990/use-star-wars-api'

const App = () => {
  const {data, loading}= useStarWarsAPI()

  if(loading) return <p>Loading...</p>

  if(data) {
    return (
      <div>
        {data}
      </div>
    )
  }
  return null;
}

export default App
```

## License

MIT © [ssamaresh](https://github.com/ssamaresh)

---

This hook is created using [create-react-hook](https://github.com/hermanya/create-react-hook).
npm package: @ssamilg/html2pdf.js
Description: A fork of html2pdf.js with dependency updates
Author: Şehit Şamil Gökmen
Latest version: 1.0.0

# @ssamilg/html2pdf.js

## This is a fork of [htm2pdf.js](https://github.com/eKoopmans/html2pdf.js) with dependecy updates.

[html2canvas](https://github.com/niklasvh/html2canvas) package is unable to handle `oklch` color function. In this fork, [html2canvas-pro](https://github.com/yorickshan/html2canvas-pro) used instead.

For more information and configuration you can visit the [htm2pdf.js](https://github.com/eKoopmans/html2pdf.js)
npm package: @ssasidharan/spellchecker
Description: Bindings to native spellchecker
Latest version: 4.1.1

### !!! Important note !!! 
This is a fork of [node-spellchecker](https://github.com/atom/node-spellchecker), you probably want that one instead because it supports Windows 7 and Linux (via Hunspell). This one removes Hunspell due to issues my org has with it's license.

# SpellChecker Node Module

[![Build status](https://ci.appveyor.com/api/projects/status/kmilw63dodpu2xvr?svg=true)](https://ci.appveyor.com/project/ccnokes/node-spellchecker)
[![Build Status](https://travis-ci.org/ccnokes/node-spellchecker.svg?branch=master)](https://travis-ci.org/ccnokes/node-spellchecker)

Native bindings to [NSSpellChecker](https://developer.apple.com/library/mac/#documentation/cocoa/reference/ApplicationKit/Classes/NSSpellChecker_Class/Reference/Reference.html) or the [Windows 8 Spell Check API](https://msdn.microsoft.com/en-us/library/windows/desktop/hh869853(v=vs.85).aspx), depending on your platform.

## Installing

```bash
npm install @ccnokes/spellchecker
```

## Using

```javascript
import { SpellChecker } from '@ccnokes/spellchecker'
```

### SpellChecker.isMisspelled(word)

Check if a word is misspelled.

`word` - String word to check.

Returns `true` if the word is misspelled, `false` otherwise.

### SpellChecker.getCorrectionsForMisspelling(word)

Get the corrections for a misspelled word.

`word` - String word to get corrections for.

Returns a non-null but possibly empty array of string corrections.

### SpellChecker.checkSpelling(corpus)

Identify misspelled words in a corpus of text.

`corpus` - String corpus of text to spellcheck.

Returns an Array containing `{start, end}` objects that describe an index range within the original String that contains a misspelled word.

### SpellChecker.checkSpellingAsync(corpus)

Asynchronously identify misspelled words.

`corpus` - String corpus of text to spellcheck.

Returns a Promise that resolves with the Array described by `checkSpelling()`.

### SpellChecker.add(word)

Adds a word to the dictionary.
When using Hunspell, this will not modify the .dic file; new words must be added each time the spellchecker is created. Use a custom dictionary file.

`word` - String word to add.

Returns nothing.

### SpellChecker.isSupported()

Tells if your platform is supported. If it's not, you can use the API as normal, just nothing will actually work.

Returns boolean.
npm package: @ssasy-auth/extension
Description: a bridge that enables communication between websites and the ssasy extension
Author: hello@oliverrr.net
Latest version: 1.0.0

# ssasy extension bridge

`ssasy-ext` is a browser extension that offers a secure, usable and scalable alternative to existing password and federation-based user authentication schemes.

The `bridge` component abstracts the complex logic that web applications would need to implement if they were to communicate with the `ssasy-ext`. The absraction encompasses:

- the interface for messages (see [interface.ts](./src/interface.ts))
- the logic for sending and receiving messages (see [bridge.ts](./src/bridge.ts))

## usage

```ts
import { Bridge } from 'ssasy-ext-bridge';

// check if the extension is installed
const extensionInstalled: boolean = await Bridge.isExtensionInstalled(); // returns true or false

if(extensionInstalled === true){

  const requestMode: string = 'login'; // or 'registration'
  
  // request the user's public key
  const publicKey: string = await Bridge.requestPublicKey(requestMode); // returns the user's public key

  // ... generate a challenge with the user's public key 

  // initiate challenge-response
  const challengeResponse: string = await Bridge.requestChallengeResponse(requestMode, challenge); // returns the challenge response

  // ... verify the challenge response
}
```
npm package: @ssaul/expandable-scrollable-drawer
Description: An expandable/collapsible drawer component for React Native that supports scrollable content
Author: Steve Saul
Latest version: 0.5.2

## expandable-scrollable-drawer
Expandable drawer component for React Native that supports scrollable content and can be controlled programatically.

![Imgur Image](https://imgur.com/NuE4tO8.gif)


## Installation
```$ yarn add expandable-scrollable-drawer```

or

```$ npm install expandable-scrollable-drawer --save```

then

```import { Drawer } from 'expandable-scrollable-drawer'```

## Example
```
<Drawer 
  drawerPosition={ 'collapsed' }
  onChange={ newPosition => {} }>
  /* Content Here */
</Drawer>
```

## Props

|Prop          | Type |Description |Default |Possible Values |
|-------------|-------------|-------------|-------------|-------------|
| dismissFromFullHeight | bool | If true, swiping down from the full height will dismiss the drawer. If false, swiping down from the full height will collapse the drawer. | ```false``` | ```true```, ```false``` |
| expandable | bool | If true, allows the drawer to be dragged up to expand. If false, the drawer can only be dismissed. | ```true``` | ```true```, ```false``` |
| drawerPosition | string | sets the drawer's starting position and allows it to be controlled programatically. | ```collapsed``` | ```collapsed```, ```expanded```, ```dismissed```
| drawerStyle | object      | Customize the drawer's background color or other style props  |```{ }``` |```{ }``` |
| handleBarStyle | object      | Customize the handle bar's size, color, opactiy, etc.     | ```{ }``` |```{ }``` |
| onChange | func      | Function is called when the drawer's state changes   | ```()=>{ }``` |```collapsed```, ```expanded```, ```dismissed``` |



## Try It
Expo Snack:

https://snack.expo.io/@ssaul/expandable-drawer-with-scrollable-content
npm package: @ssc-bsides-cam/simple-npm-package
Description: A simple npm package for demonstration purposes and use in a Node.js app.
Author: ssc-bsides-cam
Latest version: 0.0.2

<div align="center">

# Simple npm Package

A simple npm package for demonstration purposes and use in a Node.js app.

[![Known Vulnerabilities](https://snyk.io/test/github/clarkio/simple-npm-package/badge.svg)](https://snyk.io/test/github/clarkio/simple-npm-package)
![GitHub](https://img.shields.io/github/license/clarkio/simple-npm-package)
[![Discord](https://img.shields.io/discord/421902136457035777)](https://discord.gg/xB95beJ)
[![Twitch Status](https://img.shields.io/twitch/status/clarkio)](https://twitch.tv/clarkio)
<br>
[![Twitter Follow](https://img.shields.io/twitter/follow/_clarkio?style=social)](https://twitter.com/intent/follow?screen_name=_clarkio)

</div>

## Get Started

Follow these steps to publish your own npm package for your own project or using this project.

> This is using the CommonJS module format for use in Node.js apps. You can read more about CommonJS vs. ESM module formats in Node.js on the [LogRocket Blog](https://blog.logrocket.com/commonjs-vs-es-modules-node-js/)

1. [Create a GitHub Repository](https://github.com/new)
1. Clone the repo locally. Example `git clone https://github.com/clarkio/simple-npm-package.git`
1. Open your terminal and change directories to the folder of your cloned project. Example `cd simple-npm-package`
1. Run `npm init -y` to create a `package.json` file. Note: if you cloned this repository you won't need to do this step.
1. Update package.json name property with a scoped name. Example `@clarkio/simple-npm-package`. Be sure to use your username or organization name instead of mine.
1. Write code for the package (or just use the hello world example in `index.js`)
1. [Sign up with npm](https://www.npmjs.com/signup). Also for better security be sure to enable [two-factor authentication](https://docs.npmjs.com/configuring-two-factor-authentication) on your npm account.
1. Sign in with your npm account in your terminal using the command `npm login` and follow the on-screen instructions.
1. Run `npx npm-packlist` to see the contents that will be included in the published version of the package.
1. Run `npm publish --dry-run` to see what would be done when actually running the command.
1. Run `npm publish --access=public` to actually publish the package to npm. Note: --access=public is needed for scoped packages (`@clarkio/simple-npm-package`) as they're private by default. If it's not scoped and doesn't have the `private` field set to `true` in `package.json` it will be public as well.
npm package: @ssc-half-light/util
Description: Utility functions related to the webcrypto API
Author: nichoth
Latest version: 0.11.5

# util
![tests](https://github.com/ssc-half-light/util/actions/workflows/nodejs.yml/badge.svg)
[![Socket Badge](https://socket.dev/api/badge/npm/package/@ssc-half-light/util)](https://socket.dev/npm/package/@ssc-half-light/util)
[![types](https://img.shields.io/npm/types/@ssc-half-light/util)](README.md)
[![module](https://img.shields.io/badge/module-ESM-blue)](README.md)
[![license](https://img.shields.io/badge/license-MIT-brightgreen)](LICENSE)

Utility functions

Depends on `uint8arrays` and `@oddjs/odd`.

## install

```bash
npm i @ssc-half-light/util
```

## API

### verify
Works in node or browsers.

```ts
async (did:string, sig:string, msg:string):Promise<boolean>
```

#### example &mdash; verify
```ts
import { verify } from '@ssc-half-light/util'

const DID = 'did:key:z13V3Sog2Ya...'
const sig = 'X8iGF4Lz4erw4UE...'

const isValid = await verify(DID, sig, 'my message')
```

### sign
```ts
(keystore:KeyStore, msg:string):Promise<Uint8Array>
```

#### example &mdash; sign
This depends on a `keystore` instance.

```ts
import { sign, toString } from '@ssc-half-light/util'
import * as odd from '@oddjs/odd'

const program = await odd.program({
    namespace: { creator: 'test', name: 'testing' },
    debug: true
})
const { keystore } = program.components.crypto
const sig = toString(await sign(keystore, 'my message'))
```


### toString
Return a `'base64url'` string. Good for getting a string version of a signature.

```ts
function toString (arr:Uint8Array):string
```

#### example &mdash; toString
```js
test('toString', t => {
    const myString = toString(myUint8Array)
    t.equal(typeof myString, 'string', 'should conver a Uint8Array to string')
})
```
### writeKeyToDid
Convert a given public key to a DID string.

```ts
async function writeKeyToDid (crypto:Crypto.Implementation):Promise<DID>
```

#### example
```js
import { writeKeyToDid } from '@ssc-half-light/util'

test('writeKeyToDid', async t => {
    const crypto = program.components.crypto
    const did = await writeKeyToDid(crypto)
    console.log('**did**', did)
    t.equal(typeof did, 'string', 'should create string')
    t.ok(did.includes('did:key:'), 'should return the right format string')
})
```

### didToPublicKey 
Convert a DID string to a `Uint8Array` and `type` string.

```ts
function didToPublicKey (did:string):({
    publicKey:Uint8Array,
    type: 'rsa' | 'ed25519' | 'bls12-381'
})
```

#### example &mdash; didToPublicKey
Get the DID version of the key used to sign messages.

```js
test('didToPublicKey', t => {
    const did = 'did:key:z13...'
    const pubKey = didToPublicKey(did)

    t.equal(pubKey.type, 'rsa', 'should return the right key type')
    t.ok(pubKey.publicKey instanceof Uint8Array,
        'should return the public key as a Uint8Array')
})
```