open-index/open-npm huggingface dataset:
npm package: @otterlord/is-land
Description: Determine if your code is running in the browser, or on the server.
Author: Otterlord
Latest version: 0.1.0

# @otterlord/is-land

Detect if your [Astro island](https://docs.astro.build/en/concepts/islands/) is running in the browser, or on the server.

## Example

`@otterlord/is-land` is most useful on Astro islands hydrated using `client:load`.

```astro
---
import MyIsland from '~/components/MyIsland.tsx'
---

<MyIsland client:load>
```

Import the `@otterlord/is-land` package, and call it to check if your running in the browser.

```tsx
import { h } from 'preact'
import isLand from '@otterlord/is-land'

export default function MyIsland() {
  if (isLand()) alert('Hello browser!')

  return (
    <h1>Hello world!</h1>
  );
}
```
npm package: @otterlyspace/use-chatwoot
Description: A React hook for integrating with Chatwoot, a customer support platform.
Author: Otterly Space
Latest version: 1.3.0

# useChatwoot

`useChatwoot` is a React hook library that wraps the Chatwoot JS SDK into an easy-to-use React context and hook. It simplifies the integration of Chatwoot into your React applications, allowing you to manage Chatwoot commands and settings effortlessly.

## Installation

You can install the library using your preferred package manager:

### npm
```bash
npm install @otterlyspace/use-chatwoot
```

### yarn
```bash
yarn add @otterlyspace/use-chatwoot
```

### pnpm
```bash
pnpm add @otterlyspace/use-chatwoot
```

## Setup

To use `useChatwoot`, you need to set up the `ChatwootProvider` in your application. This provider initializes the Chatwoot SDK and makes its commands accessible via the `useChatwoot` hook.

### Required Variables

The `ChatwootProvider` requires the following configuration:

- `websiteToken` (string): Your Chatwoot website token.
- `baseUrl` (string): The base URL of your Chatwoot instance.
- `customConfig` (optional): An object containing additional Chatwoot settings. These settings will override the default ones.

### Example Configuration

```tsx
import React from "react";
import { ChatwootProvider } from "@otterlyspace/use-chatwoot";

const App = () => {
  const chatwootConfig = {
    websiteToken: "your-website-token",
    baseUrl: "https://app.chatwoot.com",
    customConfig: {
      hideMessageBubble: true,
      position: "left",
      locale: "fr",
    },
  };

  return (
    <ChatwootProvider config={chatwootConfig}>
      <YourAppComponents />
    </ChatwootProvider>
  );
};

export default App;
```

## Using the Hook

The `useChatwoot` hook provides access to the Chatwoot commands, allowing you to interact with the Chatwoot SDK.

### Example Usage

```tsx
import React from "react";
import { useChatwoot } from "@otterlyspace/use-chatwoot";

const ChatwootExample = () => {
  const chatwootCommands = useChatwoot();

  const openChat = () => {
    if (chatwootCommands) {
      chatwootCommands.toggle();
    } else {
      console.error("Chatwoot commands are not available.");
    }
  };

  return (
    <button onClick={openChat}>
      Open Chat
    </button>
  );
};

export default ChatwootExample;
```

## Features

- **Context-based Integration**: Easily set up Chatwoot in your React app using the `ChatwootProvider`.
- **Customizable Settings**: Override default Chatwoot settings with your own configuration.
- **Hook Access**: Use the `useChatwoot` hook to interact with the Chatwoot SDK commands.

## Notes

- Ensure that the `ChatwootProvider` is placed at the root of your application or at a level where all components requiring Chatwoot access are nested.
- The `useChatwoot` hook must be used within a `ChatwootProvider`. Otherwise, it will throw an error.

## License

This library is open-source and available under the [MIT License](https://opensource.org/licenses/MIT).
npm package: @otterseal/cli
Description: 🦦 OtterSeal CLI - Zero-knowledge encrypted secrets and notes from the command line
Author: JBot
Latest version: 0.0.3

# @otterseal/cli

🦦 OtterSeal - Zero-knowledge encrypted secrets CLI

## Installation

```bash
# From the monorepo
pnpm install

# Or install globally (when published)
npm install -g @otterseal/cli
```

## Usage

### Note Commands

```bash
# Read a note
oseal note read "my-note-title"

# Create or edit a note (opens $EDITOR if no content)
oseal note edit "my-note-title" "Hello, world!"
echo "Hello, world!" | oseal note edit "my-note-title"
```

### Secret Commands

```bash
# Create a one-time secret link
oseal secret send --content "This is a secret message"

# With custom expiration
oseal secret send --content "Secret" --expires 30m
oseal secret send --content "Secret" --expires 1d
oseal secret send --content "Secret" --expires 7d

# Self-destruct after reading
oseal secret send --content "Secret" --selfDestruct

# From stdin
echo "Secret content" | oseal secret send

# Reveal a secret
oseal secret reveal --url "https://otterseal.ycmj.bot/#/send/<uuid>"

# Check if secret exists without reading
oseal secret peek --url "https://otterseal.ycmj.bot/#/send/<uuid>"
```

## Configuration

Create `~/.oseal.json`:

```json
{
  "server_url": "https://otterseal.ycmj.bot",
  "editor": "vim"
}
```

## How It Works

All encryption happens client-side using AES-256-GCM:

1. **Note title** → HKDF derivation → note ID (server only sees this)
2. **Note title** → HKDF derivation → AES-256 key
3. **Content** → encrypted with derived key → stored on server

The server never sees your plaintext content or titles.


## Link Formats

- Current format (default): `https://otterseal.ycmj.bot/#/send/<uuid>`
- Legacy format still supported for reveal/peek: `https://otterseal.ycmj.bot/send/<id>#<key>`
npm package: @ottersight/cli
Description: ottersight - local SCA scanner CLI
Latest version: 0.1.13

# @ottersight/cli

[![npm version](https://img.shields.io/npm/v/@ottersight/cli)](https://www.npmjs.com/package/@ottersight/cli)
[![license](https://img.shields.io/badge/license-MIT-blue)](./LICENSE)
[![node](https://img.shields.io/node/v/@ottersight/cli)](https://nodejs.org)

Command-line interface for [OtterSight](https://ottersight.com) — local dependency security scanning with SBOM generation, CVE detection, EUVD mapping, and CISA KEV enrichment.

## Prerequisites

Syft and Grype must be on `PATH`:

```bash
# macOS
brew install anchore/grype/grype anchore/syft/syft

# Linux
curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin
curl -sSfL https://raw.githubusercontent.com/anchore/grype/main/install.sh | sh -s -- -b /usr/local/bin
```

## Installation

```bash
npm install -g @ottersight/cli
```

Or run without installing:

```bash
npx @ottersight/cli scan .
```

## Usage

```bash
ottersight scan .                        # Scan current directory
ottersight scan /path/to/project         # Scan a specific path
ottersight scan . --output report.md     # Write Markdown report to file
ottersight scan . --quiet                # Suppress spinners (CI-friendly)
ottersight --help
ottersight scan --help
```

## Output

Results grouped by severity (CRITICAL → HIGH → MEDIUM → LOW):

| Package | Version | CVE | Severity | EUVD-ID | KEV | Fix Available |
|---------|---------|-----|----------|---------|-----|---------------|

A summary line is always printed. `--output report.md` writes Markdown without ANSI codes.

## Exit Codes

| Code | Meaning |
|------|---------|
| 0 | Scan completed (vulnerabilities may be present) |
| 1 | Scan failed (missing tools, invalid path, Syft/Grype error) |

## Docker

Syft and Grype are bundled — no local install needed:

```bash
docker run --rm -v $(pwd):/repo ottersight/cli scan /repo
docker run --rm -v $(pwd):/repo ottersight/cli scan /repo --output /repo/report.md
```

## OtterSight Cloud

**OtterSight CLI** is the free, open-source scanner. **[OtterSight Cloud](https://ottersight.com)** adds automated scheduled scanning, a multi-repo dashboard, notifications, and EU compliance reporting (NIS2/CRA). currently being built — sign up early for a launch discount.


## Library

For programmatic use, see [`@ottersight/scanner`](../scanner/README.md).

## License

[MIT](./LICENSE)
npm package: @ottimis/capacitor-volumes
Description: Manage volume from capacitor.
Author: mmoriani
Latest version: 7.0.0

# @ottimis/capacitor-volumes

Manage device volume from capacitor.

Get volume level in a range between 0 and 1.
Volume will be set proportionally in a scale between 0 and "maxVolumeOfDevice".

⭐️ Any suggestion will be appreciated

## Supported platforms

| Platform | Supported |
| -------- |-----------|
| Android  | ✅         |
| iOS      | ✅ (only getVolumeLevel)        |
| Web      | ❌         |

## Install

```bash
npm install @ottimis/capacitor-volumes
npx cap sync
```

## API

<docgen-index>

* [`getVolumeLevel(...)`](#getvolumelevel)
* [`setVolumeLevel(...)`](#setvolumelevel)
* [Enums](#enums)

</docgen-index>

<docgen-api>
<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->

### getVolumeLevel(...)

```typescript
getVolumeLevel(options?: { type?: VolumeTypes | undefined; } | undefined) => Promise<{ value: number; }>
```

type parameter is only available on Android

| Param         | Type                                                            |
| ------------- | --------------------------------------------------------------- |
| **`options`** | <code>{ type?: <a href="#volumetypes">VolumeTypes</a>; }</code> |

**Returns:** <code>Promise&lt;{ value: number; }&gt;</code>

--------------------


### setVolumeLevel(...)

```typescript
setVolumeLevel(options: { value: number; type?: VolumeTypes; }) => Promise<{ value: number; }>
```

this works only on Android
value parameter is an integer between 0 and 10 for android

| Param         | Type                                                                           |
| ------------- | ------------------------------------------------------------------------------ |
| **`options`** | <code>{ value: number; type?: <a href="#volumetypes">VolumeTypes</a>; }</code> |

**Returns:** <code>Promise&lt;{ value: number; }&gt;</code>

--------------------


### Enums


#### VolumeTypes

| Members            | Value          |
| ------------------ | -------------- |
| **`voice_call`**   | <code>0</code> |
| **`system`**       | <code>1</code> |
| **`ring`**         | <code>2</code> |
| **`default`**      | <code>3</code> |
| **`music`**        | <code>3</code> |
| **`alarm`**        | <code>4</code> |
| **`notification`** | <code>5</code> |
| **`dtmf`**         | <code>8</code> |

</docgen-api>