open-index/open-npm huggingface dataset:
npm package: @openaddresses/lib
Description: <h1 align='center'>OpenAddresses CLI & Lib</h1>
Author: ingalls
Latest version: 4.4.5

<h1 align='center'>OpenAddresses CLI & Lib</h1>

<p align='center'>Javascript Library and CLI for the <a href='https://github.com/openaddresses/batch'>OpenAddresses API</a></p>

## General Usage

<h3 align=center>Installation</h3>

**JS Library**

```sh
npm add '@openaddresses/lib'
```

**CLI**

```sh
npm add --global @openaddresses/lib
```

<h3 align=center>Instantiation</h3>

Note: if the username & password is not explicitly set, OA will fallback to checking for
a `OA_USERNAME` & `OA_PASSWORD` environment variable. For the `url` parameter, be sure to include the protocol and (if necessary) port number.

Alternatively an API token can be provided via a `OA_TOKEN` environment variable, or the server secret via the `OA_SECRET` variable.

**JS Library**

```js
import OA from '@openaddresses/lib';

const oa = new OA({
    username: 'ingalls',
    password: 'yeaheh',
    url: 'http://example.openaddresses.io',
});
```

**CLI**

The CLI tool must be provided the URL to connect to for each subcommand.
This can be accomplished by providing the URL to a local or remote OA server. Be sure to include the protocol and, for local connections, the port number.

```sh
# Connecting to a remote oa server
./cli.js --url 'https://example.openaddresses.io'
```

```sh
# Connecting to a local oa dev server
./cli.js --url 'http://localhost:5000'
```
npm package: @openaddresses/tap-diff
Description: The most human-friendly TAP reporter
Author: axross
Latest version: 3.0.0

# tap-diff

[![npm version](https://badge.fury.io/js/tap-diff.svg)](http://badge.fury.io/js/tap-diff)

The most human-friendly [TAP reporter](https://github.com/substack/tape#pretty-reporters).

![Screenshot](screenshot1.png)

![Screenshot](screenshot2.png)

## How to use

You can use tap-diff in the same way as other [TAP reporters](https://github.com/substack/tape#pretty-reporters).

```
npm install -g @openaddresses/tap-diff
```

```
tape ./*.test.js | tap-diff
```

tap-diff uses [chalk](https://www.npmjs.com/package/chalk) for adding color, which automatically detects
color terminals. If you're piping the output and want to force color:

```
FORCE_COLOR=t tape ./*.test.js | tap-diff
```

Or use with `createStream()`:

```javascript
'use strict'

const test = require('tape')
const tapDiff = require('@openaddresses/tap-diff')

test.createStream()
  .pipe(tapDiff())
  .pipe(process.stdout)

test('timing test', (t) => {
  t.plan(2)
  t.equal(typeof Date.now, 'function')
  var start = Date.now()

  setTimeout(() => {
    t.equal(Date.now() - start, 100)
  }, 100)
})
```

## License

MIT
npm package: @openadp/browser-sdk
Description: OpenADP Browser-Compatible JavaScript SDK for distributed cryptography
Author: OpenADP Project
Latest version: 0.1.2

# OpenADP Browser JavaScript SDK

Browser-compatible JavaScript SDK for OpenADP distributed cryptography.

## Installation

Include the files directly in your web application or use as ES modules:

```html
<script type="module">
  import { register, recover } from './path/to/sdk/browser-javascript/ocrypt.js';
</script>
```

## Usage

```javascript
import { register, recover } from './path/to/openadp/sdk/browser-javascript/ocrypt.js';

// Register (protect a secret)
const userID = 'alice@example.com';
const appID = 'my-secure-app';
const secret = new TextEncoder().encode('my secret data');
const pin = 'user-password';
const maxGuesses = 10;

const metadata = await register(userID, appID, secret, pin, maxGuesses);

// Store metadata alongside user record (it's safe to store anywhere)
localStorage.setItem('backup_metadata', JSON.stringify(Array.from(metadata)));

// Later, recover the secret
const storedMetadata = new Uint8Array(JSON.parse(localStorage.getItem('backup_metadata')));
const { secret: recoveredSecret, remaining, updatedMetadata } = await recover(storedMetadata, pin);

const recoveredData = new TextDecoder().decode(recoveredSecret);
console.log('Recovered:', recoveredData);
```

## Features

- **Browser-compatible**: Uses WebCrypto API instead of Node.js crypto
- **Distributed security**: Secrets protected across multiple independent servers
- **Nation-state resistant**: Even simple PINs become secure
- **Automatic backup refresh**: Maintains security over time
- **No dependencies**: Except for @noble/hashes for cryptographic primitives

## Files

- `ocrypt.js` - Main API (register/recover functions)
- `client.js` - OpenADP network client
- `keygen.js` - Key generation and recovery
- `crypto.js` - Cryptographic primitives
- `noise-nk.js` - Noise protocol implementation

## Differences from Node.js SDK

This browser SDK differs from the Node.js version in several ways:

- Uses `crypto.getRandomValues()` instead of Node.js `crypto.randomBytes()`
- Uses WebCrypto API for AES-GCM encryption
- Imports browser-compatible modules
- No Buffer support (uses Uint8Array)

## License

MIT
npm package: @openafg/nuxt-fullpage
Description: Nuxt module for creating fullscreen page scroll fast and simple.
Author: https://afgprogrammer.com
Latest version: 1.0.5

### Nuxt fullpage

Nuxt module for creating fullscreen page scroll fast and simple.

- [Demo online](https://codesandbox.io/s/openafgnuxt-fullpage-live-demo-c8qul)


## Table of contents
1. [Installation](#installation)
2. [Usage](#usage)
3. [Options](#options)
4. [Contributing](#contributing)


## Installation

Terminal:
```bash
// With npm

npm install --save @openafg/nuxt-fullpage
```

## Usage

Add @openafg/nuxt-fullpage to the Modules section of nuxt.config.js

```js
export default {
  modules: [
    ['@openafg/nuxt-fullpage', {
      // Options
    }]
  ]
}
```

## Required HTML
This wrapper creates a `<full-page>` component, which you can use like other Vue.js components. For example:

```html
<div>
    <full-page>
      <section class="section">
        First section ...
      </section>
      <section class="section">
        Second section ...
      </section>
  </full-page>
</div>
```

## Options
To configure the module, in nuxt.config.js.

```js
export default {
  modules: [
    ['@openafg/nuxt-fullpage', {
      activeSection: 0,
      mouseWheelSensitivity: 120,
      showIndicators: false
    }]
  ]
}
```
## Contributing
npm package: @openafg/vue-uicon
Description: Use your SVG icons easily with vue-uicon
Author: https://afgprogrammer.com
Latest version: 1.0.0

## @openafg/vue-uicon

Use your SVG icons easily with vue-uicon


## Installation

Terminal:
```bash
// With npm

npm install --save @openafg/vue-uicon
```

## Usage
Add the following code in to your app.js or main.js
```js
import Uicon from '@openafg/vue-uicon'
....

Vue.use(Uicon, { 
  /* options */
  icons: {
    iconName: 'SVG path'
  }
})
```
```html
<template>
   <ui-icon name="iconName"></ui-icon>
</template>

```
Available props
```html
 <template>
   <ui-icon name="iconName" color="#00f" size="40"></ui-icon>
</template>
```
## Options
Currently supported options

```js
Vue.use(Uicon, { 
  defaultColor: '#aaa',
  defaultSize: 20, // default is 20
  viewBox: '0 0 60 60', // default is 0 0 32 32
  strokeLinecap: 'round', // default is round
  strokeLinejoin: 'round', // default is round,
  strokeWidth: 1 // default is 0.5
  icons: {
    ....
  }
})
```

## Links

* [Website](https://afgprogrammer.com)
* [Twitter](https://twitter.com/afgprogrammer)
* [Instagram](https://instagram.com/afgprogrammer)
npm package: @openagenda/agenda-docx
Description: This app allows the generation of a Microsoft word docx document listing the events referenced in an OpenAgenda calendar. It relies on OpenAgenda calendars for content and the wonderful docxtemplater for docx generation.
Author: Kaoré
Latest version: 1.2.2

# Overview

This app allows the generation of a Microsoft word docx document listing the events referenced in an OpenAgenda calendar. It relies on OpenAgenda calendars for content and the wonderful docxtemplater for docx generation.

It provides the following functionality:

- Front app for configuring and launching new jobs
- Backend app for processing a job queue

# Getting started

Requirements:

- nodejs
- An amazon bucket
- An available redis implementation

Install the things:

    yarn

Put the following config in a config.dev.js file:

    "use strict";

    module.exports = {
      s3: {
        region: 'eu-west-3',
        accessKeyId: 'yourawsaccesskeyid',
        secretAccessKey: 'yourawssecretaccesskeyid',
        bucket: 'someawsbucketname'
      },
      redis: {
        port: 6379,
        host: 'localhost'
      },
      queue: {
        namespace: 'docx',
        separator: ':'
      },
      localTmpPath: '/var/tmp'
    }

... and you should be good to go.

    yarn start

Check `localhost:3000` and click on the link to open the modal. The agenda used as basis for the generation of the document is this one: https://openagenda.com/ndm-2018-nouvelle-aquitaine

It can be changed on the `index.html` file of this repo.

Alternatively, a basic cli tool can be used to run a docx generation from a terminal:

    yarn cli

# Bits and pieces

This repo implements every functionality required to have a working docx generation mechanism

      React UI Component
            |
            v
      Express app -> [ redis queue ] -> block pop task
            |                                |
         updates                           updates,
            |                                |   generates docx,
            |                                |        uploads docx on s3
            --->state of docx export         |                |
                of one agenda on S3  <-------- <---------------

Here are the different parts:

- **UI Component**: Allows users to see the state of the export, download a file when available, and queue requests to generate updated exports
- **Express app**: Provides all endpoints required to interface with the UI. It enqueues any new request to generate a new export on a redis queue.
- **Task**: Monitors the queue using a blocking pop. Processes docx generation request and uploads resulting documents on S3
npm package: @openagenda/babel-plugin-lodash
Description: Modular Lodash builds without the hassle.
Author: Graeme Yeates
Latest version: 3.4.0

# @sigmacomputing/babel-plugin-lodash

A simple transform to cherry-pick Lodash modules so you don’t have to.

Combine with [lodash-webpack-plugin](https://www.npmjs.com/package/lodash-webpack-plugin)
for even smaller cherry-picked builds!

@sigmacomputing/babel-plugin-lodash is forked from
[babel-plugin-lodash](https://github.com/lodash/babel-plugin-lodash) which has
since been abandoned.

## Install

NPM

```shell
$ npm install --save lodash
$ npm install --save-dev @sigmacomputing/babel-plugin-lodash @babel/cli @babel/preset-env
```

Yarn

```shell
$ yarn add lodash
$ yarn add @sigmacomputing/babel-plugin-lodash @babel/cli @babel/preset-env -D
```

## Example

Transforms

```js
import _ from 'lodash';
import { add } from 'lodash/fp';

const addOne = add(1);
_.map([1, 2, 3], addOne);
```

roughly to

```js
import _add from 'lodash/fp/add';
import _map from 'lodash/map';

const addOne = _add(1);
_map([1, 2, 3], addOne);
```

## Usage

###### .babelrc

```json
{
  "plugins": ["@sigmacomputing/babel-plugin-lodash"],
  "presets": [["@babel/env", { "targets": { "node": 6 } }]]
}
```

Set plugin options using an array of `[pluginName, optionsObject]`.

```json
{
  "plugins": [
    [
      "@sigmacomputing/babel-plugin-lodash",
      { "id": "lodash-compat", "cwd": "some/path" }
    ]
  ],
  "presets": [["@babel/env", { "targets": { "node": 6 } }]]
}
```

The `options.id` can be an array of ids.

```json
{
  "plugins": [
    ["@sigmacomputing/babel-plugin-lodash", { "id": ["async", "lodash-bound"] }]
  ],
  "presets": [["@babel/env", { "targets": { "node": 6 } }]]
}
```

###### Babel CLI

```sh
$ babel --plugins @sigmacomputing/babel-plugin-lodash --presets @babel/es2015 script.js
```

###### Babel API

```js
require('babel-core').transform('code', {
  plugins: ['@sigmacomputing/babel-plugin-lodash'],
  presets: [['@babel/env', { targets: { node: 6 } }]],
});
```

###### webpack.config.js

```js
'module': {
  'loaders': [{
    'loader': 'babel-loader',
    'test': /\.js$/,
    'exclude': /node_modules/,
    'query': {
      'plugins': ['@sigmacomputing/babel-plugin-lodash'],
      'presets': [['@babel/env', { 'targets': { 'node': 6 } }]]
    }
  }]
}
```

## FAQ

> Can this plugin produce ES2015 imports rather than CommonJS imports?

This plugin produces ES2015 imports by default. The
[`@babel/plugin-transform-modules-commonjs`](https://www.npmjs.com/package/@babel/plugin-transform-modules-commonjs)
plugin, which is included in the [`@babel/preset-es2015`](https://www.npmjs.com/package/@babel/preset-es2015)
preset, transforms ES2015 `import` statements to CommonJS. Omit it from your
preset to preserve ES2015 style imports.

## Limitations

- You must use ES2015 imports to load Lodash
- Babel < 6 & Node.js < 4 aren’t supported
- Chain sequences aren’t supported. See [this blog post](https://medium.com/making-internets/why-using-chain-is-a-mistake-9bc1f80d51ba) for alternatives.
- Modularized [method packages](https://www.npmjs.com/browse/keyword/lodash-modularized) aren’t supported
npm package: @openagenda/cz-conventional-changelog
Description: Commitizen adapter following the conventional-changelog format.
Author: Jim Cummins
Latest version: 3.2.2

# cz-conventional-changelog

[![Greenkeeper badge](https://badges.greenkeeper.io/commitizen/cz-conventional-changelog.svg)](https://greenkeeper.io/)

Status:
[![npm version](https://img.shields.io/npm/v/cz-conventional-changelog.svg?style=flat-square)](https://www.npmjs.org/package/cz-conventional-changelog)
[![npm downloads](https://img.shields.io/npm/dm/cz-conventional-changelog.svg?style=flat-square)](http://npm-stat.com/charts.html?package=cz-conventional-changelog&from=2015-08-01)
[![Build Status](https://img.shields.io/travis/commitizen/cz-conventional-changelog.svg?style=flat-square)](https://travis-ci.org/commitizen/cz-conventional-changelog)

Part of the [commitizen](https://github.com/commitizen/cz-cli) family. Prompts for [conventional changelog](https://github.com/conventional-changelog/conventional-changelog) standard.

## Configuration

### package.json

Like commitizen, you specify the configuration of cz-conventional-changelog through the package.json's `config.commitizen` key.

```json5
{
// ...  default values
    "config": {
        "commitizen": {
            "path": "./node_modules/cz-conventional-changelog",
            "disableScopeLowerCase": false,
            "disableSubjectLowerCase": false,
            "maxHeaderWidth": 100,
            "maxLineWidth": 100,
            "defaultType": "",
            "defaultScope": "",
            "defaultSubject": "",
            "defaultBody": "",
            "defaultIssues": "",
            "types": {
              ...
              "feat": {
                "description": "A new feature",
                "title": "Features"
              },
              ...
            }
        }
    }
// ...
}
```

### Environment variables

The following environment variables can be used to override any default configuration or package.json based configuration.

* CZ_TYPE = defaultType
* CZ_SCOPE = defaultScope
* CZ_SUBJECT = defaultSubject
* CZ_BODY = defaultBody
* CZ_MAX_HEADER_WIDTH = maxHeaderWidth
* CZ_MAX_LINE_WIDTH = maxLineWidth

### Commitlint

If using the [commitlint](https://github.com/conventional-changelog/commitlint) js library, the "maxHeaderWidth" configuration property will default to the configuration of the "header-max-length" rule instead of the hard coded value of 100.  This can be ovewritten by setting the 'maxHeaderWidth' configuration in package.json or the CZ_MAX_HEADER_WIDTH environment variable.
npm package: @openagenda/eslint-config
Latest version: 1.4.0

# @openagenda/eslint-config


## ESLint

### Add dependencies

```bash
yarn add -D eslint @openagenda/eslint-config
```

### Create `.eslintrc` and `.eslintignore`

`.eslintrc`:
```json
{
  "extends": "@openagenda",

  "parserOptions": {
    "sourceType": "script"
  },

  "rules": {
    "import/no-extraneous-dependencies": [
      "error",
      {
        "devDependencies": [
          "seeds/**/*.js",
          "test/**/*.js",
          "testconfig.sample.js",
          "testconfig.js"
        ]
      }
    ]
  }
}

```

`.eslintignore`:
```ignore
!.*
node_modules/

dist/
```

The first line are useful for does not ignore the dotfiles (.storybook, .babelrc, ...)

### Add lint script to package.json

```json
{
  "scripts": {
    "lint": "eslint -c .eslintrc '**/*.js'"
  }
}
```

And run `yarn lint`.


## Prettier

### Add dependencies

```bash
yarn add -D prettier-eslint-cli
```

### Add prettier script to package.json

```json
{
  "scripts": {
    "prettier": "prettier-eslint --write '**/*.js'"
  }
}
```

And run `yarn prettier`.


## Lint-staged

### Add dependencies

```bash
yarn add -D lint-staged
```

### Add lint-staged script and config to package.json

```json
{
  "scripts": {
    "lint-staged": "lint-staged"
  },
  "lint-staged": {
    "**/*.js": [
      "prettier-eslint --write",
      "eslint -c .eslintrc",
      "git add"
    ]
  }
}
```

And run `yarn lint-staged`.
npm package: @openagenda/hooks
Description: Async middleware for JavaScript and TypeScript
Author: Feathers contributor
Latest version: 0.3.3

# Hooks

[![CI GitHub action](https://github.com/feathersjs/hooks/workflows/Node%20CI/badge.svg)](https://github.com/feathersjs/hooks/actions?query=workflow%3A%22Node+CI%22)
[![Dependency Status](https://img.shields.io/david/feathersjs/feathers.svg?style=flat-square&path=packages/hooks)](https://david-dm.org/feathersjs/feathers?path=packages/hooks)
[![Download Status](https://img.shields.io/npm/dm/@feathersjs/hooks.svg?style=flat-square)](https://www.npmjs.com/package/@feathersjs/hooks)

`@feathersjs/hooks` brings Koa style middleware to any asynchronous JavaScript function.

## Installation

```
npm install @feathersjs/hooks --save
```

## Documentation

See [feathersjs/hooks](https://github.com/feathersjs/hooks/) for the complete documentation.

## License

Copyright (c) 2020

Licensed under the [MIT license](LICENSE).
npm package: @openagenda/mails-editor
Description: Edit your email templates easily.
Latest version: 3.0.0

# @openagenda/mails-editor

Edit your email templates easily.

[MJML](https://mjml.io/) + [EJS](http://ejs.co/) + [Nodemailer](https://nodemailer.com/about/) = :heart:

## Getting Started

This project allows you to create templates with preview and refresh in real time.

### Installing

```bash
yarn add -D @openagenda/mails-editor

# or `npm i -D @openagenda/mails-editor`
```

[@openagenda/mails](https://www.npmjs.com/package/@openagenda/mails) is a peerDependency, you need to install it:

```bash
yarn add @openagenda/mails
```

### Launching app

The templates used by `oa-mails-editor` come from a folder defined by the `MAILS_TEMPLATES_DIR` environment variable or with the first argument of the command.

The simpliest method is to run `oa-mails-editor` from the root of your project and navigate to [http://localhost:3000](http://localhost:3000).  
The home page is the list of templates available in the chosen folder (`./templates` by default), once on the template to edit you just have to save your changes to see the changes in your browser.
npm package: @openagenda/react-timingspicker
Description: Pick timings in a calendar week grid view
Latest version: 1.4.3

# Overview

Pick timings in a calendar week grid view

# Getting started

    yarn
    yarn start

Any changes brought in a src file will be loaded on to the browser

# Basic usage

    import TimingsPicker from '@openagenda/react-timingspicker'

    <TimingsPicker {...props} />

## Props

- **onChange**: provides list of timings of picker as they are changed. Each timing is an object with two keys defining the date boundaries of the timing: `begin` and `end`
- **value**: list of timings `[ { begin, end } ]`
- **allowedTimings**: range of dates within which picker will allow user to define new timings.
- **weekStartsOn**: Day of the week of the first column of the grid. Offset from sunday. Defaults on sunday.
- **locale**: Two letter code of the interface language
npm package: @openagents-org/agent-connector
Description: Agent management CLI and library for OpenAgents — install, configure, and run AI coding agents
Author: OpenAgents
Latest version: 0.3.8

# @openagents-org/agent-connector

Agent management CLI and library for [OpenAgents](https://openagents.org) — install, configure, and run AI coding agents from your terminal.

## Install

```bash
npm install -g @openagents-org/agent-connector
```

## CLI Usage

```bash
# Browse available agents
agent-connector search

# Install an agent runtime
agent-connector install openclaw
agent-connector install claude

# Create and configure an agent
agent-connector create my-agent --type openclaw
agent-connector env openclaw --set LLM_API_KEY=sk-...
agent-connector env openclaw --set LLM_BASE_URL=https://api.openai.com/v1

# Start the daemon (runs agents in background)
agent-connector up

# Check status
agent-connector status

# View logs
agent-connector logs

# Connect to a workspace
agent-connector connect my-agent <token>

# Stop
agent-connector down
```

Run `agent-connector help` for the full command list.

## Library Usage

```js
const { AgentConnector } = require('@openagents-org/agent-connector');

const connector = new AgentConnector();

// Browse catalog
const catalog = await connector.getCatalog();

// Install a runtime
await connector.install('openclaw');

// Agent CRUD
connector.addAgent({ name: 'my-agent', type: 'openclaw' });
connector.saveAgentEnv('openclaw', { LLM_API_KEY: 'sk-...' });

// Daemon lifecycle
const daemon = connector.createDaemon();
await daemon.start();
```

## Supported Agents

| Agent | Type | Install |
|-------|------|---------|
| [OpenClaw](https://github.com/openagents/openclaw) | `openclaw` | npm |
| [Claude Code](https://claude.ai/claude-code) | `claude` | npm |
| [Codex](https://github.com/openai/codex) | `codex` | npm |
| [Aider](https://aider.chat) | `aider` | curl |
| [Goose](https://github.com/block/goose) | `goose` | curl |
| [Amp](https://ampcode.com) | `amp` | curl |
| [Gemini CLI](https://github.com/google-gemini/gemini-cli) | `gemini` | npm |
| And more... | | |

## Requirements

- Node.js 18+
- No Python required

## License

MIT
npm package: @openagents-org/agent-launcher
Description: OpenAgents Launcher — install, configure, and run AI coding agents from your terminal
Author: OpenAgents
Latest version: 0.2.103

# @openagents-org/agent-connector

Agent management CLI and library for [OpenAgents](https://openagents.org) — install, configure, and run AI coding agents from your terminal.

## Install

```bash
npm install -g @openagents-org/agent-connector
```

## CLI Usage

```bash
# Browse available agents
agent-connector search

# Install an agent runtime
agent-connector install openclaw
agent-connector install claude

# Create and configure an agent
agent-connector create my-agent --type openclaw
agent-connector env openclaw --set LLM_API_KEY=sk-...
agent-connector env openclaw --set LLM_BASE_URL=https://api.openai.com/v1

# Start the daemon (runs agents in background)
agent-connector up

# Check status
agent-connector status

# View logs
agent-connector logs

# Connect to a workspace
agent-connector connect my-agent <token>

# Stop
agent-connector down
```

Run `agent-connector help` for the full command list.

## Library Usage

```js
const { AgentConnector } = require('@openagents-org/agent-connector');

const connector = new AgentConnector();

// Browse catalog
const catalog = await connector.getCatalog();

// Install a runtime
await connector.install('openclaw');

// Agent CRUD
connector.addAgent({ name: 'my-agent', type: 'openclaw' });
connector.saveAgentEnv('openclaw', { LLM_API_KEY: 'sk-...' });

// Daemon lifecycle
const daemon = connector.createDaemon();
await daemon.start();
```

## Supported Agents

| Agent | Type | Install |
|-------|------|---------|
| [OpenClaw](https://github.com/openagents/openclaw) | `openclaw` | npm |
| [Claude Code](https://claude.ai/claude-code) | `claude` | npm |
| [Codex](https://github.com/openai/codex) | `codex` | npm |
| [Aider](https://aider.chat) | `aider` | curl |
| [Goose](https://github.com/block/goose) | `goose` | curl |
| [Amp](https://ampcode.com) | `amp` | curl |
| [Gemini CLI](https://github.com/google-gemini/gemini-cli) | `gemini` | npm |
| And more... | | |

## Requirements

- Node.js 18+
- No Python required

## License

MIT