open-index/open-npm huggingface dataset:
npm package: @restlessbit/aria-button
Description: > Accessible Aria Button component for React, based on the [ARIA button role docs in MDN](https://mzl.la/2Sj49P6).
Author: Mario Pabon
Latest version: 1.0.5

# @restlessbit/aria-button

> Accessible Aria Button component for React, based on the [ARIA button role docs in MDN](https://mzl.la/2Sj49P6).

# Installation

```
yarn add @restlessbit/aria-button
```

# Usage

```tsx
import AriaButton from '@restlessbit/aria-button'

function CoolAccessibleReactApplication () {
  return (
    <AriaButton onClick={() => alert('sick!')}>Click dis with your mouse, or use your keyboard if you would prefer!</AriaButton>
  )
}
```

# Running the example

```bash
yarn example
```

# Running tests

```bash
yarn test
```
npm package: @restlessbit/tsconfig
Description: Resuable tsconfig for TypeScript projects.
Latest version: 1.0.1

# @restlessbit/tsconfig

Resuable tsconfig for TypeScript projects.

## Install

```bash
yarn add @restlessbit/tsconfig -D

# or

npm install @restlessbit/tsconfig -D
```

## Usage

```javascript
// tsconfig.json
{
  "extends": "@restlessbit/tsconfig",
  "compilerOptions": {
    "jsx": "preserve"
  },
  "include": [
    "src"
  ]
}
```
npm package: @restlessness/auth-jwt
Description: ## Installation From you restlessness project root run:
Author: Getapper
Latest version: 0.5.1

# @restlessness/auth-jwt [![npm version](https://img.shields.io/npm/v/@restlessness/auth-jwt.svg?style=flat)](https://www.npmjs.com/package/@restlessness/auth-jwt)

## Installation
From you restlessness project root run:

```shell script
$ # Install node package
$ npm i @restlessness/auth-jwt
$
$ # Add it to the project using the restlessness cli
$ restlessness add-auth @restlessness/auth-jwt
```

The `add-auth` command adds the package to the project and creates a `JwtSession` model class, representing the auth
session. The model class already includes convenience methods to *serialize* and *deserialize* the session object.

## Environment variables
| Name | Description |
-------|--------------
| RLN_AUTH_JWT_SECRET | Secret used to create/verify jwt tokens |

The `add-auth` command also adds parametric environment variables to the .env files present in the project.

Example **.env.production** file:
```
RLN_AUTH_JWT_SECRET=${RLN_AUTH_JWT_SECRET_PRODUCTION}
```
Then is possible to set the variable by setting `RLN_AUTH_JWT_SECRET_PRODUCTION` or setting
`RLN_AUTH_JWT_SECRET` directly.

## Usage
The `JwtSession` class created by the `add-auth` command can be modified to include the needed information
on the token.

Example:
```ts
// src/models/JwtSession/index.ts

export default class JwtSession {
  ['constructor']: typeof JwtSession
  id: string
  name: string
  permissions: string[]

  // ...
};
```

Then is possible to create a session:
```ts
// ...
const session = new JwtSession();
session.id = myId;
session.name = 'Arthur';
session.permissions = [];

const serialized = session.serialize();
const deserialized = JwtSession.deserialize(serialized);
// ...
```
npm package: @resto-wv8/models
Description: This library was generated with [Nx](https://nx.dev).   All interfaces are generated from the codegen SSOT.
Author: Carlos
Latest version: 0.0.3-beta.21

# RestoWV8 Models interfaces definitions 

This library was generated with [Nx](https://nx.dev).  
All interfaces are generated from the codegen SSOT.  

Export also some simple helper functions
- toWords
- calcBase,calcTot
...
npm package: @resto-wv8/ng-core
Description: Contain Pipes,Directives,FormlyFieldDef definitions  auto generated from ssot  - src/lib/ssot
Author: Carlos
Latest version: 0.0.3-beta.21

# ng-core

Contain Pipes,Directives,FormlyFieldDef definitions  auto generated from ssot 
- src/lib/ssot 

Contain shared utility directives, ...
- nav-back
- ...

Contain shared utility pipes
- camelCase
- ...
npm package: @restomax-wv8/ng-weborders
Description: - Export all WebOrders pipes, directives, utility functions
Author: Carlos
Latest version: 8.0.1-beta.36

### Ng WebOrders library
- Export all WebOrders pipes, directives, utility functions   

## NG Generate  
```
ng g module src/r8-web-orders-pipes --flat --dry-run
ng g pipe src/pipes/weborder-info  -m r8-web-orders-pipes --skipTests --dry-run 
```
and then   
- add to public-api
- verify module imports / exports   

## Build, Publish to npm.js
```
npm run setver:ng-weborders
npm run lint:ng-weborders
npm run build:ng-weborders
npm run publish:ng-weborders
```
> before publish test npmjs user with npm whoami
npm package: @restorecommerce/eslint-config-restorecommerce
Description: The eslint configs used for Restore Commerce
Author: Invend GmbH
Latest version: 0.1.5

# eslint-config-restorecommerce

The eslint configs used for Restore Commerce.
The ruleset is just a slightly modified version of
[eslint-config-airbnb-base](https://github.com/airbnb/javascript).

## Usage

Add it as a dev-dependency:

```js
"devDependencies": {
  "eslint-config-restorecommerce": "restorecommerce/eslint-config-restorecommerce",
  ...
}
```

Add a script `lint` like so:

```js
"scripts": {
  "lint": "eslint *.json *.js lib/**",
  ...
}
```

Have a file `.eslintrc` and add:

```js
{
  "extends": "eslint-config-restorecommerce"
}
```
npm package: @restorecommerce/winston-elasticsearch-transformer
Description: Transformer function for the winston-elasticsearch log transport
Author: Invend GmbH
Latest version: 0.1.10

# winston-elasticsearch-transformer

<img src="http://img.shields.io/npm/v/%40restorecommerce%2Fwinston%2Delasticsearch%2Dtransformer.svg?style=flat-square" alt="">[![Build Status][build]](https://travis-ci.org/restorecommerce/winston-elasticsearch-transformer?branch=master)[![Dependencies][depend]](https://david-dm.org/restorecommerce/winston-elasticsearch-transformer)[![Coverage Status][cover]](https://coveralls.io/github/restorecommerce/winston-elasticsearch-transformer?branch=master)

[version]: http://img.shields.io/npm/v/winston-elasticsearch-transformer.svg?style=flat-square
[build]: http://img.shields.io/travis/restorecommerce/winston-elasticsearch-transformer/master.svg?style=flat-square
[depend]: https://img.shields.io/david/restorecommerce/winston-elasticsearch-transformer.svg?style=flat-square
[cover]: http://img.shields.io/coveralls/restorecommerce/winston-elasticsearch-transformer/master.svg?style=flat-square

Transformer function for the
[winston-elasticsearch](https://github.com/vanthome/winston-elasticsearch)
transport, which transforms log messages in a
[Logstash](https://github.com/elastic/logstash)/
[Kibana](https://github.com/elastic/kibana) optimized form and optimizes
the data for the index mapping.

The following changes and transformations are applied to log messages:

- Adds a `@timestamp` field with the current date/ time
- Adds a `host` property with the current host name
- Adds a `rid` (request-id) based on [cls-rtracer](https://github.com/puzpuzpuz/cls-rtracer)

This module also comes with a suitable
[mapping template](lib/index-template-mapping.json) and an
[index pattern](kibana/Logs-Index-Pattern.ndjson) that
can be imported in Kibana.
npm package: @restormel/context-packs
Description: Pass-specific text context packs (analysis, critique, synthesis) from a minimal graph-shaped retrieval payload — no DB or engine dependencies.
Latest version: 0.1.1

# @restormel/context-packs

Pure, dependency-free TypeScript library that turns a **minimal graph-shaped retrieval payload** into three pass-specific text blocks (**analysis**, **critique**, **synthesis**) plus diagnostic stats for token budgets, role mix, reply chains, and unresolved tensions.

## Problem

Downstream LLM pipelines (for example SOPHIA’s multi-pass analysis) need **stable, budget-aware prose** built from claims, relations, and arguments — without importing database drivers, full retrieval DTOs, or SSE machinery.

## Install

```bash
npm install @restormel/context-packs
```

## Usage

```ts
import {
  buildPassSpecificContextPacks,
  type ContextPackRetrievalInput,
} from "@restormel/context-packs";

const input: ContextPackRetrievalInput = {
  claims: [
    {
      id: "c1",
      text: "Example claim text.",
      claim_type: "thesis",
      source_title: "Source A",
      confidence: 0.9,
    },
  ],
  relations: [],
  arguments: [],
  seed_claim_ids: ["c1"],
};

const packs = buildPassSpecificContextPacks(input, { depthMode: "standard" });
console.log(packs.analysis.block);
console.log(packs.analysis.stats.estimated_tokens, packs.analysis.stats.token_budget);
```

### Imports

- **Supported:** `import … from "@restormel/context-packs"` (ESM + TypeScript types via `dist/index.d.ts`).
- **CJS:** not shipped; consume from ESM bundlers or Node ESM.

### SOPHIA integration

SOPHIA keeps a full `RetrievalResult` in `engine.ts`. Map it into this package’s input with `contextPackInputFromRetrieval(result)` in SOPHIA (shallow pick of `claims`, `relations`, `arguments`, `seed_claim_ids`); that adapter lives in SOPHIA — **do not** import SOPHIA from this package.

## API

| Export | Role |
|--------|------|
| `buildPassSpecificContextPacks(input, options?)` | Main entry; `options.depthMode` is `quick` \| `standard` \| `deep` (token budgets per pass match SOPHIA). |
| `ContextPackRetrievalInput` | Input: `claims`, `relations`, `arguments`, `seed_claim_ids`. |
| `ContextPackClaim`, `ContextPackRelation`, `ContextPackArgument` | Element types; arguments may include `key_premises` and `conclusion_text` for ranking. |
| `PassSpecificContextPacks`, `ContextPack`, `ContextPackStats`, … | Output shapes and pass/role unions. |

Token **estimation** is `Math.ceil(characterLength / 4)`. See TSDoc on `ContextPackStats` for field meanings.

## Publishing

Tag **`platform-v*`** triggers [publish-restormel-platform.yml](../../.github/workflows/publish-restormel-platform.yml) together with other platform packages. See [CHANGELOG.md](./CHANGELOG.md) for semver policy.

## Docs

- Scope and parity: [docs/restormel/phase2-context-packs-extraction-scope.md](../../docs/restormel/phase2-context-packs-extraction-scope.md)
- Status / integration: [docs/restormel/PHASE2-EXTRACTION-STATUS.md](../../docs/restormel/PHASE2-EXTRACTION-STATUS.md)
npm package: @restormel/contracts
Description: Restormel shared API and reasoning contracts (Zod schemas and types).
Latest version: 0.1.0

# @restormel/contracts

`@restormel/contracts` is the shared ownership boundary for shapes that cross app, API, storage, trace, or package boundaries.

**Graph UI (SvelteKit) docs:** [restormel.dev/graph/docs](https://restormel.dev/graph/docs) (DTO surface for canvas is **`@restormel/graph-core`**, not this package).

## What belongs here

- request and response DTOs
- graph, trace, reasoning, retrieval, and provider-facing types
- zod schemas for serialized or validated shapes
- ingestion metadata contracts reused outside a single server implementation

## What does not belong here

- server-only runtime logic
- storage adapters
- provider clients
- UI-specific view models
- app-local stores and component state

## Versioning

- `RESTORMEL_CONTRACTS_SCHEMA_VERSION` is the package-level schema epoch
- additive changes should preserve compatibility within the same epoch
- breaking contract changes should bump the schema epoch and be called out in migration docs

## Initial extraction scope

- `api`, `constitution`, `domains`, `enrichment`, `ingestion`, `learn`, `passes`, `providers`, `references`, `trace`, and `verification`
- SOPHIA app-local shims in `src/lib/types/*` and `src/lib/server/ingestion/contracts.ts` now re-export from this package during migration
npm package: @restormel/doctor
Description: Restormel Doctor — open-source CLI for setup and health checks.
Author: Allotment Technology Ltd
Latest version: 0.1.10

# @restormel/doctor

Restormel Doctor is an **open-source** CLI that checks your local setup and surfaces actionable “what to fix next” issues. It is designed to be the **entrypoint** into the Restormel Platform.

## Install

```bash
npx @restormel/doctor
```

Or install globally / in a repo:

```bash
pnpm add -D @restormel/doctor
```

## Usage

```bash
restormel-doctor
```

### Repo scan (best-effort)

```bash
restormel-doctor --repo
```

### Manifest output (CI-stable inventory)

```bash
restormel-doctor --repo --manifest-out restormel.doctor.manifest.json
```

### Output formats

- **Text (default)**:

```bash
restormel-doctor
```

- **JSON (for CI/artifacts)**:

```bash
restormel-doctor --format json
restormel-doctor --format json --out doctor.json
```

### Exit codes

- `0`: no blocking issues found
- `1`: blocking issues found
- `2`: usage/config error (unexpected failure)

## What it checks (v1)

- Framework detection (Next.js / React / SvelteKit / Astro)
- `restormel.config.json` presence + parseability
- **Core:** `@restormel/keys` must be installed (exit **non-zero** if missing)
- **Optional UI (Phase 5):** `@restormel/keys-svelte` / `keys-react` / `keys-elements` — **warning only** if missing (headless Phases 1–4 still pass)
- Local key store presence (keys are never printed raw)

## Relationship to Restormel Keys

- `@restormel/doctor` is standalone and open source.
- Restormel Keys (dashboard) will expose a **Pro** Healthcheck UI that aggregates Doctor + Validate signals across integrations, models, routes, and policies.
npm package: @restormel/graph-core
Description: Restormel Graph Contract v0 DTOs plus contracts-free layout, trace, and workspace helpers.
Latest version: 0.1.1

# `@restormel/graph-core`

**Restormel Graph Contract v0** — portable types and contracts-free helpers for interactive graph rendering.

- **`viewModel.ts`** — frozen DTOs only (no runtime logic, no `@restormel/contracts`).
- **`layout.ts`** — `computeLayout` (orbital placement).
- **`trace.ts`** — trace tag / label helpers for canvas copy.
- **`workspace.ts`** — generic filter and focus helpers (`WorkspaceGraphLike`, `filterGraph`, …).

See **`GRAPH_CORE_V0_SCOPE.md`** for what is in v0 vs explicitly deferred (compare, lineage, projection, …).

## Subpath exports

After `pnpm run build`, Node resolves:

- `@restormel/graph-core`
- `@restormel/graph-core/viewModel`
- `@restormel/graph-core/layout`
- `@restormel/graph-core/trace`
- `@restormel/graph-core/workspace`

## Build

```bash
pnpm --filter @restormel/graph-core run build
```

## Tests

```bash
pnpm --filter @restormel/graph-core test
```
npm package: @restormel/graph-reasoning-extensions
Description: Compare, lineage, projection, and evaluation helpers over graph snapshots — depends on @restormel/contracts and @restormel/graph-core (not part of Contract v0 MVP).
Latest version: 0.1.0

# `@restormel/graph-reasoning-extensions`

Graph reasoning helpers that depend on **`@restormel/contracts`** (compare, lineage, projection, evaluation, summary, diff) and **`@restormel/graph-core`** (layout, workspace filters).

**Restormel Graph Contract v0** (`GraphData`, canvas DTOs) stays in **`@restormel/graph-core`** — not in this package.

**Public graph UI docs:** [restormel.dev/graph/docs](https://restormel.dev/graph/docs) · [SvelteKit integration](https://restormel.dev/graph/docs/integration/sveltekit).

**Publish train:** git tag **`platform-v*`** (see `.github/workflows/publish-restormel-platform.yml`). Legacy notes: [PUBLISHING.md](./PUBLISHING.md).
npm package: @restormel/keys-cli
Description: CLI for Restormel Keys: init, add keys, validate, doctor, cost estimate.
Author: Allotment Technology Ltd
Latest version: 0.1.10

# @restormel/keys-cli

CLI for Restormel Keys: reduce setup friction for Next.js, React, SvelteKit, and Astro.

## Install

Use current npm release (**≥0.1.4** for `keys patch` + `@restormel/keys@0.2.7` train; latest trains with core/doctor/validate). **v0.1.0** had broken deps.

```bash
pnpm add -D @restormel/keys-cli
```

If you only need checks (no Keys scaffolding), use the standalone wedge CLIs:

```bash
npx @restormel/doctor
npx @restormel/validate
```

## Commands

| Command | Description |
|--------|-------------|
| `keys init` | Detect framework, generate config, suggest packages |
| `keys add <provider>` | Prompt for API key, validate, store (openai \| anthropic \| google) |
| `keys list` | Show stored keys (masked) |
| `keys validate` | Wrapper for `restormel-validate` (exit 1 if invalid — CI-friendly) |
| `keys doctor` | Wrapper for `restormel-doctor` (setup/health checks) |
| `keys estimate <model> --input <n> --output <n>` | Cost estimate for a model |
| `keys patch` | One-command patch upgrade for installed Restormel packages + optional catalog verification |
| `keys catalog fetch` | Fetch public `GET /keys/dashboard/api/catalog` (summary or `--json`; optional `--base-url`, paging, `--include-unhealthy`, `--skip-allowlist`) |

### Canonical catalog (public feed)

Verify connectivity and inspect contract version (uses `RESTORMEL_KEYS_BASE` or `https://restormel.dev`):

```bash
npx @restormel/keys-cli catalog fetch
npx @restormel/keys-cli catalog fetch --json | jq .contractVersion
```

### One-command patch upgrades

```bash
npx @restormel/keys-cli patch
```

This command detects your package manager, updates installed `@restormel/*` packages to latest patch-compatible versions, and verifies the canonical provider/model catalog endpoint (`/keys/dashboard/api/catalog`) when possible.

- In **pnpm workspaces**, running from the workspace root uses a recursive upgrade (`pnpm up -r`) so you do not hit root add checks.
- If you prefer a preview first, use `npx @restormel/keys-cli patch --dry-run`.

## Config and storage

- **Config** (`restormel.config.json`): framework and provider list only — **no secrets**.
- **Key store** (`.restormel/key-store.json`): holds API keys for local use. Add `.restormel/` to `.gitignore`; never commit.

## Gate

In a fresh Next.js (App Router) project, `npx @restormel/doctor` should run and report framework and package status. Run `keys init` first to create config; then `restormel-doctor` exits 0 when setup is OK.
npm package: @restormel/observability
Description: Restormel observability helpers for reasoning events, trace normalization, and SSE types.
Latest version: 0.1.1

# @restormel/observability

Shared trace and event-shaping utilities for Restormel runtime flows.

## Current exports

- `eventsToTrace(events, options)`
- `traceToEvents(trace)`
- `normalizeSophiaReasoningEvents(events, options)`
- `normalizeRunTrace(trace)`
- `normalizeOpenInferenceLikeTrace(trace)`
- `normalizedTraceToReasoningObjectEvents(trace)`
- `serializeReasoningEvent(event)`
- `parseReasoningEventBlock(block)`

## Example

```ts
import {
  eventsToTrace,
  normalizeRunTrace,
  normalizedTraceToReasoningObjectEvents,
  traceToEvents
} from '@restormel/observability';

const trace = eventsToTrace(events, { source: 'sse', runId: 'run:123' });
const replay = traceToEvents(trace);
const normalized = normalizeRunTrace(trace);
const timeline = normalizedTraceToReasoningObjectEvents(normalized);
```

## Scope

- This package normalizes existing trace/event producers into a canonical Restormel trace format.
- It does not implement a tracing backend, storage system, or observability dashboard.
npm package: @restormel/state
Description: Restormel State — append-only agent memory events, deterministic materialized views, and correlation hooks for context-packs and observability.
Latest version: 0.2.0

# @restormel/state

**Restormel State** — append-only **agent memory events**, deterministic **materialized views**, and **correlation** helpers for `@restormel/context-packs` and `@restormel/observability`.

## Non-goals

- Vector databases, embeddings, or RAG retrieval services
- Orchestration / checkpoint runners (LangGraph-style)
- Storage backends or hosted dashboards (hosts persist events; this package projects them in memory)

## Install

```bash
npm install @restormel/state
```

Depends on **`@restormel/context-packs`** for `ContextPackRetrievalInput` correlation typing.

## Usage

```ts
import {
  attachCorrelationToRetrievalInput,
  projectWorkingMemory,
  workingMemoryToPromptBlock,
  type MemoryPolicy,
  type StateEvent,
} from "@restormel/state";

const policy: MemoryPolicy = {
  maxCellsPerScope: 20,
  maxApproxTokensPerScope: 8000,
};

const events: StateEvent[] = [
  {
    type: "memory_cell_upsert",
    id: "ev-1",
    ts: new Date().toISOString(),
    scope: "session",
    cell_id: "fact-1",
    text: "User prefers dark mode.",
    run_id: "run-123",
  },
];

const view = projectWorkingMemory(events, policy);
const block = workingMemoryToPromptBlock(view);

const packInput = attachCorrelationToRetrievalInput(
  { claims: [], relations: [], arguments: [], seed_claim_ids: [] },
  { run_id: "run-123", state_sequence: view.last_sequence }
);
```

## SOPHIA (Stoa)

Stoa-specific event builders live **only in SOPHIA** — they are not part of this package. Copy the reference module from [docs/restormel/state-sophia-integration.md](../../docs/restormel/state-sophia-integration.md) into your app.

## API (summary)

| Export | Role |
|--------|------|
| `projectWorkingMemory` | Fold + policy prune → `WorkingMemoryView` |
| `workingMemoryToPromptBlock` | Scopes → newline prompt text |
| `workingMemoryToDebugJson` | Operator/support JSON snapshot |
| `attachCorrelationToRetrievalInput` | Set `restormel_correlation` on context-pack input |
| `observabilityCorrelationFromView` | `run_id` + tail event + scope counts for traces/logs |
| `StateEvent`, `MemoryPolicy`, `WorkingMemoryView`, … | Types |

## Publishing

Tag **`platform-v*`** — [publish-restormel-platform.yml](../../.github/workflows/publish-restormel-platform.yml) (after `@restormel/context-packs`). See [CHANGELOG.md](./CHANGELOG.md).

## Docs

- **Integrator overview (in-app, same IA as Graph reasoning docs):** [Restormel State — restormel.dev](https://restormel.dev/graph/docs/extensions/state)
- **Repo canonical spec:** [docs/restormel/RESTORMEL-STATE.md](../../docs/restormel/RESTORMEL-STATE.md) (where docs live, non-goals, model)
- **SOPHIA hooks:** [docs/restormel/state-sophia-integration.md](../../docs/restormel/state-sophia-integration.md)
- **Suite package map:** [docs/restormel-monorepo-packages.md](../../docs/restormel-monorepo-packages.md)
- **npm reference:** [docs/reference/npm-packages.md](../../docs/reference/npm-packages.md)
npm package: @restormel/testing-runs-server
Description: Minimal HTTP server implementing GET/POST /v1/runs for Restormel Testing (embedded runner).
Latest version: 0.1.8

# `@restormel/testing-runs-server`

Minimal **Runs API v1** server (`POST` / `GET /v1/runs`) that executes **`@restormel/testing-runner`** against a fixed workspace directory.

```bash
export RESTORMEL_RUNS_WORKSPACE=/abs/path/to/repo
pnpm exec restormel-testing-runs-server --port=8787
```

Documentation: [docs/testing/testing-runs-server.md](../../docs/testing/testing-runs-server.md) · Production: [docs/testing/testing-runs-server-deployment.md](../../docs/testing/testing-runs-server-deployment.md) · Contract: [docs/testing/runs-api-v1.md](../../docs/testing/runs-api-v1.md).
npm package: @restormel/validate
Description: Restormel Validate — open-source CLI for credential and configuration validation.
Author: Allotment Technology Ltd
Latest version: 0.1.10

# @restormel/validate

Restormel Validate is an **open-source** CLI for validating provider credentials and configuration. It is designed to be CI-friendly and to act as an **entrypoint** into the Restormel Platform.

## Install

```bash
npx @restormel/validate
```

Or install in a repo:

```bash
pnpm add -D @restormel/validate
```

## Usage

```bash
restormel-validate
```

### Output formats

```bash
restormel-validate --format json
restormel-validate --format json --out validate.json
```

### Modes / CI behavior

- Default behavior is CI-friendly: **exit 1** if any known-provider key is invalid.\n- Use `--fail-on warn` or `--fail-on none` to relax gating.\n- Use `--strict` as a preset for CI (fail on invalid).

### Retries and timeouts

```bash
restormel-validate --retries 2 --timeout-ms 8000
```

## Exit codes

- `0`: all checks passed (or failures suppressed by `--fail-on none`)\n+- `1`: invalid findings (or warnings treated as failures via `--fail-on warn`)\n+- `2`: usage/config error (bad CLI usage or unexpected failure)\n+- `3`: transient failures only (timeouts, rate limits, 5xx) — no confirmed invalid keys

## When to use which CLI

- Prefer **`@restormel/validate`** in CI and automation (works standalone, stable exit codes).\n
- If you’re already using Keys onboarding tooling, use **`@restormel/keys-cli validate`** as a wrapper that delegates to this CLI.
npm package: @restpack/client
Description: Restpack.io client for HTML to PDF API, and Screenshot API
Author: Restpack Inc
Latest version: 2.0.0

# Restpack Node.JS library

This library provides easy access to https://restpack.io API services from Node.JS

## Installation

Install the package with:

```sh
npm install @restpack/client --save
```

Or, if you are using Yarn;

```sh
yarn add @restpack/client
```

## Usage

The package needs to be configured using your client access keys that can be found on the [Restpack Console](https://restpack.io/console/).

All API methods return a Promise so you can chain calls or use async / await.

```js
var restpack = require("@restpack/client");

var html2pdf = restpack.html2pdf("<YOUR ACCESS KEY>");
var screenshot = restpack.screenshot("<YOUR ACCESS KEY>");

html2pdf
  .convert("http://google.com", { pdf_page: "A4" })
  .then(function success(document) {
    console.log(document);
  })
  .catch(function fail(error) {
    console.error(error);
  });
```

## HTML to PDF API

For detailed documentation, please visit [HTML to PDF API v5 Reference page](https://restpack.io/html2pdf/docs).

```js
var restpack = require("@restpack/client");

var html2pdf = restpack.html2pdf("<YOUR ACCESS KEY>");

// Convert given URL to PDF. Return the document details and CDN url of PDF
// Check Available Options link above for all options.
var promise = html2pdf.convert("http://google.com", {
  pdf_page: "A4" /* , other options */,
});
promise.then(function (doc) {
  console.log(doc);
});

// Convert given html content to PDF. Return the document details and CDN url of PDF
html2pdf.convertHTML("<p><b>Bold text</b> etc</p>", {
  pdf_page: "A4" /* , other options */,
});

// Convert given URL to PDF. Return the PDF document as Buffer
html2pdf.convertToPDF("http://google.com", {
  pdf_page: "A4" /* , other options */,
});

// Convert given html content to PDF. Return the PDF document as Buffer
html2pdf.convertHTMLToPDF("<p><b>Bold text</b> etc</p>", {
  pdf_page: "A4" /* , other options */,
});
```

## Screenshot API

For detailed documentation, please visit [Screenshot API v5 Reference page](https://restpack.io/screenshot/docs).

```js
var restpack = require("@restpack/client");

var screenshot = restpack.screenshot("<YOUR ACCESS KEY>");

// Convert given URL to PDF. Return the document details and CDN url of PDF
// Check Available Options link above for all options.
var promise = screenshot.capture("http://google.com", {
  pdf_page: "A4" /* , other options */,
});
promise.then(function (doc) {
  console.log(doc);
});

// Convert given html content to PDF. Return the document details and CDN url of PDF
screenshot.captureHTML("<p><b>Bold text</b> etc</p>", {
  pdf_page: "A4" /* , other options */,
});

// Convert given URL to PDF. Return the PDF document as Buffer
screenshot.captureToImage("http://google.com", {
  pdf_page: "A4" /* , other options */,
});

// Convert given html content to PDF. Return the PDF document as Buffer
screenshot.captureHTMLToImage("<p><b>Bold text</b> etc</p>", {
  pdf_page: "A4" /* , other options */,
});
```
npm package: @restqa/rest-api
Description: REST API Functional Test engine based on Gerkin - RestQA
Author: Olivier Rodomond
Latest version: 0.1.5

# RestQA Rest-API Step definitions

> An Awesome RestQA library providing ready to use steps to test REST APIs

## What is Rest-API Step definition ?

Rest0API is a part of the [RestQA](https://restqa.io) ecosystem.
In order to test RESTful API through automation, Rest-API is providing an awesome bootstrap for you to kick in within a few minute.
Based on [cucumber-js](https://github.com/cucumber/cucumber-js), the library expand the number of defined step on one of your current automation project based on cucumber-js.


## Using RestQAPI plugin as Standalone

## Requirements

* Node.js >= 16
* Cucumber >= 7.0.0



## Contributing

Simply install the dependencies.

```
npm i
```

Run the unit tests

```
npm test
```

Run an integration example

```
npm run example
```

Enjoy!

## License

[Apache 2.0 License](./LICENSE)
npm package: @restqa/restqapi
Description: REST API Functional Test engine based on Gerkin - RestQA
Author: Olivier Rodomond
Latest version: 0.1.5
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# RestQAPI 🦏

> An Awesome Cucumber library providing ready to use steps to test REST APIs

## What is RestqAPI ?

RestQAPI is a part of the [RestQA](https://restqa.io) ecosystem.
In order to test RESTful API through automation, RestQAPI is providing an awesome bootstrap for you to kick in within a few minute.
Based on [cucumber-js](https://github.com/cucumber/cucumber-js), the library expand the number of defined step on one of your current automation project based on cucumber-js.


## Using RestQAPI plugin as Standalone

## Requirements

* Node.js >= 12
* Cucumber >= 7.0.0

## Installation

Using npm:

```
npm install @restqa/restqapi @cucumber/cucumber
```

Using yarn:

```
yarn add @restqa/restqapi @cucumber/cucumber
```

Then take a look at the implementation in the folder [example](./example)


## Example

This repository comes with few examples, in order to run them, invoke the following script:

```
npm run start:example
```

Enjoy!

## License

[Apache 2.0 License](./LICENSE)
npm package: @restream/n8n-nodes-restream
Description: n8n node for the Restream API
Author: Oleksii Siryi
Latest version: 0.2.0

# @restream/n8n-nodes-restream

This is an n8n community node. It lets you use Restream in your n8n workflows.

[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/) workflow automation platform.

[Installation](#installation)
[Operations](#operations)
[Credentials](#credentials)
[Compatibility](#compatibility)
[Resources](#resources)

## Installation

Go to your **n8n** > **Settings** > **Community nodes** and install:

```
@restream/n8n-nodes-restream
```

For more details, see the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.

## Operations

- Event
    - Get an event by ID
    - Get event history (finished and missed events)
    - Get in-progress events
    - Get upcoming events
- Event Recording
    - Get recordings for an event
    - Get a download URL for a recording
- Clip Project
    - Get many clip projects
    - Get a clip project
- Clip
    - Get a download URL for a clip

## Credentials

This node uses OAuth2 authentication.

1. Go to the [Restream Developer Portal](https://developers.restream.io/) and create a new application.
2. Copy the **Client ID** and **Client Secret** into your n8n Restream OAuth2 credential.
3. From n8n, copy the **OAuth Redirect URL** and paste it into your Restream application's redirect URI settings.

## Compatibility

Tested with n8n@2.7.4.

## Upgrading

### v0.2.0 — Event and Recording endpoints

This version adds new OAuth2 scopes (`stream.default.read` and `storage.default.read`) required for the new Event and Event Recording operations. **Existing users must reconnect their Restream OAuth2 credentials** to grant these new permissions:

1. Open your n8n credentials page.
2. Find your Restream OAuth2 credential.
3. Click **Reconnect** to re-authorize with the updated scopes.

Existing Clip and Clip Project operations are unaffected and will continue to work without reconnecting.

## Resources

* [Restream API documentation](https://developers.restream.io/docs)