open-index/open-npm huggingface dataset:
npm package: @number-flow/react
Description: A component to transition and format numbers.
Author: Maxwell Barvian
Latest version: 0.6.0

[![NumberFlow for React](https://number-flow.barvian.me/preview.webp)](https://number-flow.barvian.me)

# NumberFlow for React

An animated number component.

[![NPM Version](https://img.shields.io/npm/v/@number-flow/react.svg)](https://npmjs.com/package/@number-flow/react)
[![Bundle size](https://badgen.net/bundlephobia/minzip/@number-flow/react@latest)](https://bundlephobia.com/package/@number-flow/react@latest)
[![Follow @mbarvian](https://img.shields.io/twitter/follow/mbarvian.svg?style=social&label=Follow)](https://x.com/mbarvian)

## Documentation

For full documentation, visit [number-flow.barvian.me](https://number-flow.barvian.me).
npm package: @number-flow/svelte
Description: A component to transition and format numbers.
Latest version: 0.4.0

[![NumberFlow for Svelte](https://number-flow.barvian.me/preview.webp)](https://number-flow.barvian.me/svelte)

# NumberFlow for Svelte

An animated number component.

[![NPM Version](https://img.shields.io/npm/v/@number-flow/svelte.svg)](https://npmjs.com/package/@number-flow/svelte)
[![Bundle size](https://badgen.net/bundlephobia/minzip/@number-flow/svelte@latest)](https://bundlephobia.com/package/@number-flow/svelte@latest)
[![Follow @mbarvian](https://img.shields.io/twitter/follow/mbarvian.svg?style=social&label=Follow)](https://x.com/mbarvian)

## Documentation

For full documentation, visit [number-flow.barvian.me/svelte](https://number-flow.barvian.me/svelte).
npm package: @number-flow/vue
Description: A component to transition and format numbers.
Author: Maxwell Barvian
Latest version: 0.5.0

[![NumberFlow for Vue](https://number-flow.barvian.me/preview.webp)](https://number-flow.barvian.me/vue)

# NumberFlow for Vue

An animated number component.

[![NPM Version](https://img.shields.io/npm/v/@number-flow/vue.svg)](https://npmjs.com/package/@number-flow/vue)
[![Bundle size](https://badgen.net/bundlephobia/minzip/@number-flow/vue@latest)](https://bundlephobia.com/package/@number-flow/vue@latest)
[![Follow @mbarvian](https://img.shields.io/twitter/follow/mbarvian.svg?style=social&label=Follow)](https://x.com/mbarvian)

## Documentation

For full documentation, visit [number-flow.barvian.me/vue](https://number-flow.barvian.me/vue).
npm package: @number0/iroh-linux-arm-gnueabihf
Description: This is the **armv7-unknown-linux-gnueabihf** binary for `@number0/iroh`
Latest version: 0.35.0

# `@number0/iroh-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@number0/iroh`
npm package: @number0/iroh-linux-arm-musleabihf
Description: This is the **armv7-unknown-linux-musleabihf** binary for `@number0/iroh`
Latest version: 0.35.0

# `@number0/iroh-linux-arm-musleabihf`

This is the **armv7-unknown-linux-musleabihf** binary for `@number0/iroh`
npm package: @number0/iroh-linux-x64-musl
Description: This is the **x86_64-unknown-linux-musl** binary for `@number0/iroh`
Latest version: 0.35.0

# `@number0/iroh-linux-x64-musl`

This is the **x86_64-unknown-linux-musl** binary for `@number0/iroh`
npm package: @number0/iroh-win32-arm64-msvc
Description: This is the **aarch64-pc-windows-msvc** binary for `@number0/iroh`
Latest version: 0.35.0

# `@number0/iroh-win32-arm64-msvc`

This is the **aarch64-pc-windows-msvc** binary for `@number0/iroh`
npm package: @number0/iroh-win32-x64-msvc
Description: This is the **x86_64-pc-windows-msvc** binary for `@number0/iroh`
Latest version: 0.35.0

# `@number0/iroh-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@number0/iroh`
npm package: @numbered/carousel
Description: A native-scroll-first carousel component for the web.
Author: Jesper Vos
Latest version: 0.1.9

# Blossom Core

A native-scroll-first carousel for the web.

## Installation

Add the blossom-carousel package to your project.

```bash
npm install @numbered/carousel/core
```

Then, create a Blossom instance and initialize it.

```js
import { Blossom } from "@numbered/carousel/core";
import "@numbered/carousel/core/style.css";

const element = document.querySelector("#my-carousel-element");
// prepare the Blossom carousel
const blossom = Blossom(element);
// initialize whenever you want
blossom.init();
```

## Lazy loading

Load Blossom only when needed.

```js
const hasMouse = window.matchMedia(
  "(hover: hover) and (pointer: fine)"
).matches;

// We don't need Blossom's engine on touch devices
if (!hasMouse) return;

const { Blossom } = await import("@numbered/carousel/core");

const element = document.querySelector("#my-carousel-element");
const blossom = Blossom(element);
blossom.init();
```

### Destroy

Destroy the Blossom instance when you no longer need it to free up resources.

```js
blossom.destroy();
```

### Get started in your favorite framework:

- [React](https://www.npmjs.com/package/@numbered/carousel/react)
- [Vue](https://www.npmjs.com/package/@numbered/carousel/vue)
- [Svelte](https://www.npmjs.com/package/@numbered/carousel/svelte)
- [Web Component](https://www.npmjs.com/package/@numbered/carousel/web)

## Examples

- [Simple](https://www.blossom-carousel.com/docs/examples#simple)
- [Variable widths](https://www.blossom-carousel.com/docs/examples#variable-widths)
- [CSS Grid](https://www.blossom-carousel.com/docs/examples#css-grid)
- [Multiple rows](https://www.blossom-carousel.com/docs/examples#multiple-rows)
- [Snapping](https://www.blossom-carousel.com/docs/examples#snapping)
- [Grouping](https://www.blossom-carousel.com/docs/examples#grouping)
- [Sticky](https://www.blossom-carousel.com/docs/examples#sticky)
- [Coverflow](https://www.blossom-carousel.com/docs/examples#cover-flow)
npm package: @numbered/carousel-react
Description: A native-scroll-first carousel component for React.
Author: Jesper Vos
Latest version: 0.1.15

# Blossom Carousel

A native-scroll-first carousel enhanced with drag support for React.

## Installation

`npm install @numbered/carousel/react`

#### React

```jsx
import { BlossomCarousel } from "@numbered/carousel/react";
import "@numbered/carousel/core/style.css";

function App() {
  return <BlossomCarousel>{/* slides */}</BlossomCarousel>;
}
```

#### Next.js

Add the import to your page or component:

```jsx
import { BlossomCarousel } from "@numbered/carousel/react";
import "@numbered/carousel/core/style.css";

export default function Page() {
  return <BlossomCarousel>{/* slides */}</BlossomCarousel>;
}
```

## Usage

```jsx
<BlossomCarousel>
  {Array.from({ length: 12 }, (_, i) => (
    <div>{i}</div>
  ))}
</BlossomCarousel>
```

### as

Define the HTMLElement of the carousel root.

```jsx
<BlossomCarousel as="ul">
  {Array.from({ length: 12 }, (_, i) => (
    <div>{i}</div>
  ))}
</BlossomCarousel>
```

Renders as

```html
<ul>
  <li>Slide 1</li>
  <li>Slide 2</li>
  <li>Slide 3</li>
  ...
</ul>
```

## Examples

- [Simple](https://www.blossom-carousel.com/docs/examples#simple)
- [Variable widths](https://www.blossom-carousel.com/docs/examples#variable-widths)
- [CSS Grid](https://www.blossom-carousel.com/docs/examples#css-grid)
- [Multiple rows](https://www.blossom-carousel.com/docs/examples#multiple-rows)
- [Snapping](https://www.blossom-carousel.com/docs/examples#snapping)
- [Grouping](https://www.blossom-carousel.com/docs/examples#grouping)
- [Sticky](https://www.blossom-carousel.com/docs/examples#sticky)
- [Coverflow](https://www.blossom-carousel.com/docs/examples#cover-flow)
npm package: @numbered/next-minify-classnames
Description: Minify CSS Modules class names
Author: stldo
Latest version: 0.0.3

# next-minify-classnames [![npm][1]][2]

Minify CSS Modules class names.

## Installation

```sh
npm install next-minify-classnames
```

## Usage

### With [next-with-plugins][3]

```js
/* next.config.js */

const withPlugins = require('next-with-plugins')

module.exports = withPlugins({
  plugins: [
    {
      resolve: 'next-minify-classnames',
      options: {
        /* next-minify-classnames options here */
      }
    }
  ]
})
```

### Standalone

```js
/* next.config.js */

const withMinifyClassNames = require('next-minify-classnames')

module.exports = withMinifyClassNames({
	/* Next.js config options here */
	minifyClassNames: {
		/* Plugin options here */
	},
})
```

### With next-compose-plugins

```js
/* next.config.js */

const withMinifyClassNames = require('next-minify-classnames')

module.exports = withPlugins([
	[withMinifyClassNames, {
		minifyClassNames: {
			/* Plugin options here */
		},
	}],
],
{
  /* Next.js config options here */
})
```

## Options

### dictionary

Type: `string`.
Default: `'bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ0123456789'`.

Characters used to generate the minified class names. Class names should start
with letters, so the string must have at least one letter. To avoid issues with
specific class names and ad blockers — e.g. `ad` —, the default dictionary uses
only consonants and numbers.

### enable

Type: `boolean`. Default: `process.env.NODE_ENV === 'production'`.

Set it to `true` to enable the plugin, `false` to disable. By default, it'll be
enabled on production environments.

### prefix

Type: `string`. Default: `''`.

### suffix

Type: `string`. Default: `''`.

## How it works

It shortens the class name length by mapping `resourcePath` and `localName`
to incremental strings.

### Example

The files `index.module.css` and `menu.module.css`, respectively:

```css
.container {
  display: flex;
}

.footer {
  padding: 1rem;
}
```

```css
.container {
  position: fixed;
}
```

Generate the following CSS with `next-minify-classnames` enabled:

```css
/* index.module.css */

.b_b {
  display: flex;
}

.b_c {
  padding: 1rem;
}

/* menu.module.css */

.c_b {
  position: fixed;
}
```

With `next-minify-classnames` disabled, the following CSS would be generated:

```css
/* index.module.css */

.index-module--container--l2fVb {
  display: flex;
}

.index-module--footer--3V8ew {
  padding: 1rem;
}

/* menu.module.css */

.menu-module--container--28fe0 {
  position: fixed;
}
```

## License

[The MIT License][license]

[1]: https://img.shields.io/npm/v/@numbered/next-minify-classnames
[2]: https://www.npmjs.com/package/@numbered/next-minify-classnames
[3]: https://github.com/mrgnou/next-minify-classnames
[license]: ./LICENSE
npm package: @numbered/project-docs
Description: Generate project docs (component APIs, design system, architecture) and inject index into CLAUDE.md
Latest version: 0.1.1
Deprecated: Renamed to @numbered/docs-to-context

# @numbered/project-docs

Extract component APIs, design system docs, and architecture specs into structured references and inject a compact index into `CLAUDE.md` — so AI agents always know what's available without hallucinating.

## Usage

```bash
bunx @numbered/project-docs
```

Run from the project root. Auto-detects platform (Next.js or Shopify).

### Options

```bash
bunx @numbered/project-docs [project_root] [options]

--platform nextjs|shopify   Force platform detection
--dirs dir1 dir2            Custom scan directories (Next.js only)
--output path               Custom output directory
```

## What it does

1. **Extracts** component APIs from source files into per-component MDX docs at `docs/components/`
2. **Discovers** core docs if present (design system, grid system, architecture specs)
3. **Injects** a compact index between `<!-- PROJECT_DOCS_START -->` / `<!-- PROJECT_DOCS_END -->` markers in `CLAUDE.md`
4. **Adds** `docs/components/` to `.gitignore`

### Injected format

Follows the [Vercel compressed folder path convention](https://vercel.com/blog/agents-md-outperforms-skills-in-our-agent-evals):

```markdown
<!-- PROJECT_DOCS_START -->
## Project Docs
|[Frontend]|root: ./docs
|frontend:{design-system.md,grid-system.md}
[Component Index]|root: ./docs/components
|IMPORTANT: Read component MDX before using any component
|components:{Button.mdx,Carousel.mdx,Container.mdx}
|If ./docs/components is missing, run: bunx @numbered/project-docs
|[Entities]|root: ./docs
|specs/architecture:{README.md,entities.md,entity-relationship-diagram.md}
|specs/architecture/entities:{about.md,journal.md,happening.md}
<!-- PROJECT_DOCS_END -->
```

## Supported platforms

### Next.js

Scans `packages/ui/components/**/*.tsx` and extracts:

- Component name, Props interface/type, JSDoc
- Default values, `tv()` variants (tailwind-variants)
- `'use client'` directive, `forwardRef` usage
- Sub-exports, local dependencies

### Shopify

Scans `snippets/*.liquid` and extracts:

- `{% doc %}...{% enddoc %}` blocks
- `@param` tags (type, required/optional, defaults)
- `@example` usage blocks

## Core docs discovery

The following files are automatically included in the index when present:

| Section | Path | Purpose |
|---|---|---|
| Frontend | `docs/design-system.md` | Design tokens, typography, colors |
| Frontend | `docs/grid-system.md` | Grid system, breakpoints, fluid utilities |
| Entities | `docs/specs/architecture/**/*.md` | Document types, ER diagrams, entity specs |

## Publishing

```bash
cd packages/project-docs
npm login --scope=@numbered
bun run publish:dry     # preview
bun run publish:npm     # publish to npm (public)
```
npm package: @numbersprotocol/estuary-upload
Description: Upload your file to Estuary and generate Numbers ID (Nid, the same as [default IPFS CIDv1](https://github.com/ipfs/kubo)).
Latest version: 1.3.0

# estuary-upload

Upload your file to Estuary and generate Numbers ID (Nid, the same as [default IPFS CIDv1](https://github.com/ipfs/kubo)).

If you upload a file to Estuary and find the CIDv1 is different from Kubo (IPFS implementation in Go) CIDv1, it is because both Kubo and Estuary generate CIDv1, but they use different chunk sizes: Kubo (256 KB) vs Estuary (1 MB). estuary-upload helps you generate Nid (Kubo CIDv1) in any file size.

## Installation
```bash
yarn global add @numbersprotocol/estuary-upload
```

## Usage

### In code

Add from path

```javascript
import { Estuary } from 'estuary-upload';

const estuary = new Estuary('<api-key>');
const cid = await estuary.addFromPath('my-file.jpg');
console.log(
  `The file is uploaded to Estuary with CID ${cid} preserved!`
);
```

Add from Nid (Kubo CIDv1)

```javascript
import { Estuary } from 'estuary-upload';

const estuary = new Estuary('<api-key>');
const cid = await estuary.addFromCid(
  'bafkreia2254bseihmsqw7fzxsk54p7nqmitn2ibhnjiafxtql6by54idv4'
);
console.log(
  `The file is uploaded to Estuary with CID ${cid} preserved!`
);
```

Add from buffer

```javascript
import { Estuary } from 'estuary-upload';

const estuary = new Estuary('<api-key>');
const cid = await estuary.addFromBuffer(new Uint8Array([21, 31, 41]));
console.log(
  `The file is uploaded to Estuary with CID ${cid} preserved!`
);
```

### CLI tool to add all files in a directory

```
$ export ESTUARY_API_KEY=<api-key>
$ estuary-upload add-dir <dirpath>
[
  ...
  'bafkreia2254bseihmsqw7fzxsk54p7nqmitn2ibhnjiafxtql6by54idv4',
  'bafkreigrov5qj25vp2vawsjlav5v3veihagovvddjodlydspmy2mtmks5q',
  ... 900 more items
]
```

### CLI tool to add specific files

```
$ estuary-upload -k <api-key> add-files <filepath...>
[
  ...
  'bafkreia2254bseihmsqw7fzxsk54p7nqmitn2ibhnjiafxtql6by54idv4',
  'bafkreigrov5qj25vp2vawsjlav5v3veihagovvddjodlydspmy2mtmks5q',
  ... 900 more items
]
```

## Run Test

### Unit Test

```bash
$ npm run unit
```

### Integration Test

The integration test will fetch an image (size ~20MB) from public IPFS gateway and upload it to Estuary.

1. Set API key

```
$ export ESTUARY_API_KEY=<api-key>
```

2. Run test

```
$ npm run integration
```
npm package: @numberworks/react-mathquill
Description: React component wrapper for Mathquill
Author: Mike Walmsley
Latest version: 1.0.5

# React component wrapper for [Mathquill](http://mathquill.com/)

[![npm version](https://badge.fury.io/js/react-mathquill.svg)](https://badge.fury.io/js/react-mathquill)

## Examples

- [Build of examples](https://viktorstrate.github.io/react-mathquill/) located at `src/examples/`
- Play with the examples below at this [Code Sandbox](https://codesandbox.io/s/sweet-liskov-8mlzu)

### Editable Math Field

```javascript
import React, { useState } from 'react'
import { addStyles, EditableMathField } from 'react-mathquill'

// inserts the required css to the <head> block.
// you can skip this, if you want to do that by yourself.
addStyles()

const EditableMathExample = () => {
  const [latex, setLatex] = useState('\\frac{1}{\\sqrt{2}}\\cdot 2')

  return (
    <div>
      <EditableMathField
        latex={latex}
        onChange={(mathField) => {
          setLatex(mathField.latex())
        }}
      />
      <p>{latex}</p>
    </div>
  )
}
```

### Static Math Field

```javascript
import React from 'react'
import { addStyles, StaticMathField } from 'react-mathquill'

// inserts the required css to the <head> block.
// you can skip this, if you want to do that by yourself.
addStyles()

const StaticMathExample = () => (
  <StaticMathField>{'\\frac{1}{\\sqrt{2}}\\cdot 2'}</StaticMathField>
)
```

# Documentation

## addStyles (function)

This function, when called, will append a `<style id="react-mathquill-styles">` tag to the `<head>` of the document.
The style tag includes all the required styles for Mathquill to work.

This function is not necessary, provided you include the styles in another way. See [Mathquill Docs - Download and Load](http://docs.mathquill.com/en/latest/Getting_Started/)

## EditableMathField (React Element)

> Wrapper for [Mathquill MathField](http://docs.mathquill.com/en/latest/Api_Methods/#mqmathfieldhtml_element-config)

### Props

- latex: String - _Initial latex value for the input field_
- config: Object - _A mathquill [config](http://docs.mathquill.com/en/latest/Config/) object_
- onChange([mathField](http://docs.mathquill.com/en/latest/Api_Methods/#mqmathfieldhtml_element-config)) - _A function that is called on change events._
- mathquillDidMount([mathField](http://docs.mathquill.com/en/latest/Api_Methods/#mqmathfieldhtml_element-config)) - _A function that is called when the Mathquill element is initalized._

Other props will be passed to the wrapping span element, this can be useful for custom _classNames_ or _styles_

## StaticMathField (React Element)

> Wrapper for [Mathquill StaticField](http://docs.mathquill.com/en/latest/Api_Methods/#mqstaticmathhtml_element)

### Props

- children: String - _A string of latex to render statically on the page_

Other props will be passed to the wrapping span element, this can be useful for custom _classNames_ or _styles_
npm package: @numberworks/use-screenshot-hook
Description: React hook to take screenshot for React components.
Author: NumberWorks
Latest version: 1.0.4

# use-screenshot-hook

> React hook to take screenshot for React components.

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

## Install

Using npm:

```bash
npm install --save use-screenshot-hook
```

Using yarn:

```bash
yarn add use-screenshot-hook
```

## Usage

```tsx
import * as React from "react";

import { useScreenshot } from "use-screenshot-hook";

const Example = () => {
  const { image, takeScreenshot } = useScreenshot();
  return (
    <div>
      <h1>Hello World!</h1>
      <button onClick={() => takeScreenshot()}>screenshot</button>
      {image && <img src={img} />}
    </div>
  );
};
```

## API

### `UseScreenshot(options: UseScreenshotProps): UseScreenshotReturnType`

#### `UseScreenshotProps`

- `ref` - Ref to the component for which the screenshot should be taken. If no ref is taken it will take the screenshot for the topmost div or body.

#### `UseScreenshotReturnType`

- `isLoading` - Indicates if the screenshot is loading this is useful for some webpages that are big and have lots of content to render.
- `takeScreenshot: (types: ImgType, options: OptionsType): string | undefined` - A function to take screenshot.
- `image` - Contains the dataUrl for the image.
- `clear()` - Clear the image from the memory.

## [Live Demo](https://use-screenshot.now.sh)

## Found this project useful? ❤️

If you found this project useful, then please consider giving it a ⭐️ on Github and sharing it with your friends via social media.

## Issues and feedback 💭

If you have any suggestion for including a feature or if something doesn't work, feel free to open a Github [issue](https://github.com/fayeed/use-screenshot/issues) for us to have a discussion on it.

## License

MIT © [fayeed](https://github.com/fayeed/use-screenshot/blob/master/LICENSE)

---

This hook is created using [create-react-hook](https://github.com/hermanya/create-react-hook).
npm package: @numends/sap-bridge
Description: SAP Bridge - Lightweight local agent for SAP ADT connectivity
Author: Numen Digital Solutions
Latest version: 0.0.2

# @numends/sap-bridge

Lightweight local agent that maintains a persistent SAP ADT session and bridges it to the Numen cloud service.

## Requirements

- Node.js >= 20
- Access to a SAP system with ADT enabled

## Quick Start

```bash
# Install globally
npm install -g @numends/sap-bridge

# Setup (one-time)
sap-bridge init

# Start
sap-bridge start
```

Or run directly with `npx`:

```bash
npx @numends/sap-bridge init
npx @numends/sap-bridge start
```

## Commands

| Command | Description |
|---------|-------------|
| `sap-bridge init` | Interactive setup wizard |
| `sap-bridge start` | Start the bridge |
| `sap-bridge start -d` | Start with debug logs |
| `sap-bridge test` | Test SAP connection |
| `sap-bridge status` | Show current configuration |

## License

MIT
npm package: @numeno/api-admin
Description: Client library for Numeno Administration API
Author: Numeno AI inc.
Latest version: 0.0.5

# Administration Typescript API

Use the Numeno Administration API to create API Keys and set their permissions (which we call Scopes). This API is meant to be used by administrators of your organization.

For more information, please visit [https://numeno.ai/](https://numeno.ai/).

## Installation & Usage

Requires [Node.js](https://nodejs.org/en/download/) version 18.0 or above:

- When installing Node.js, you are recommended to check all checkboxes related to dependencies.

Add to your package with:

```sh
npm add @numeno/api-admin
```
npm package: @numeno/api-art-rec
Description: Client library for Numeno Article Recommender API
Author: Numeno AI inc.
Latest version: 0.0.6

# Article Recommender Typescript API

Use the Numeno Article Recommender API to get personalized article recommendations.

See below for the steps to creating a Feed, as well as an introduction to the top-level concepts making up the Article Recommender API.

### Steps to creating a Feed

1. Create a Feed
2. Create a number of Stream queries associated with the Feed
3. Pull from the Feed as the Feed refreshes
4. Use those Article IDs to look up metadata for the Articles
5. Visit the Article links and render to your server DB or client app.

### Sources, Articles and Topics

A **Source** is a place where Articles come from, typically a website, a blog, or a knowledgebase endpoint. Beyond the Sources Numeno regaularly indexes, additional Sources can be associated with Stream queries, and Sources can be `allowlist`/`denylist`'d.

**Articles** are the documents produced by Sources, typically pages from a blogpost or website, articles from a news source, or posts from a social platform or company intranet.

**Topics** - Numeno has millions of Topics that it associates with Articles when they are sourced. Topics are used in Stream queries, which themselves are composed to create Feeds.

### Feeds

**A Feed is a collection of Streams.** Feeds are configured to refresh on a regular schedule. No new Articles are published to a Feed except when it's refreshed. Feeds can be refreshed manually if the API key entitlements allow.

### Streams

Think of a **Stream** as a search query with a "volume control knob". It's a collection of Topics that you're interested and a collection of Sources you'd explicitly like to include or exclude. Streams are associated with a Feed, and a collection of Streams produce the sequence of Articles that appear when a Feed is refreshed.

For more information, please visit [https://numeno.ai/](https://numeno.ai/).

## Installation

Requires [Node.js](https://nodejs.org/en/download/) version 18.0 or above:

- When installing Node.js, you are recommended to check all checkboxes related to dependencies.

Add to your package with:

```sh
npm add @numeno/api-art-rec
```

## Usage

```typescript
import * as NumenoArtRec from '@numeno/api-art-rec'

// Create an interface to the Numeno Article Recommender API.
const config = new NumenoArtRec.Configuration({
  apiKey: 'YOUR_API_KEY',
})

const api = new NumenoArtRec.DefaultApi(config)

// Create a new Feed.
const createFeedCall = api.createFeed({
  feedNew: { name: 'FriendlyNameOfFeed' },
})

createFeedCall
  .then((result) => {
    console.log(result)
  })
  .catch((error) => {
    console.log('Error while calling createFeed:')
    console.log(error)
  })
```
npm package: @numeno/api-persona
Description: Client library for Numeno Persona API
Author: Numeno AI inc.
Latest version: 0.0.4

# Persona Typescript API

Use the Numeno Persona API to create and manage Numeno Personas.

Evolving a Persona over time is dead-simple: create a Persona, then send natural-language descriptions of your users’ in-app activities to the Persona API. Under the hood, we create a rich set of models of the system that evolve over time. Then, ask Numeno to personalize some part of your experience using the Persona. Numeno will use our models to tailor your software to each user’s unique preferences and habits, allowing you to dynamically adjust your offerings.

For example, connect a Persona to the Numeno Article Recommender API to generate Article Feeds that evolve over time as your Persona evloves with user interaction.

Personas are not limited to modelling users. Posts in a social environment, articles or topics on a content platform, a screen or widget in your UI, a product in your inventory - groups of any of these things – Personas can evolve models of anything in your system! Get creative!

For more information, please visit [https://numeno.ai/](https://numeno.ai/).

## Installation

Requires [Node.js](https://nodejs.org/en/download/) version 18.0 or above:

- When installing Node.js, you are recommended to check all checkboxes related to dependencies.

Add to your package with:

```sh
npm add @numeno/api-persona
```

## Usage

```typescript
import * as NumenoPersona from '@numeno/api-persona'

// Create an interface to the Numeno Persona API.
const config = new NumenoPersona.Configuration({
  apiKey: 'YOUR_API_KEY',
})

const api = new NumenoPersona.DefaultApi(config)

// Create a new Persona.
const createPersonaCall = api.createPersona({
  personaUpdate: {
    name: 'FriendlyNameOfPersona',
    body: 'Initial block of natural-language Persona text goes here.',
  },
})

createPersonaCall
  .then((result) => {
    console.log(result)
  })
  .catch((error) => {
    console.log('Error while calling createPersona:')
    console.log(error)
  })
```
npm package: @numeno/bsky-follows
Description: Bluesky follow and follower tools (by numeno.ai)
Author: Numeno AI inc.
Latest version: 0.0.6

# Bluesky Follow Tools by numeno.ai

This package includes a CLI that can be used to export your Bluesky followers to a JSON or CSV file.

We strongly suggest using a [Bluesky app password](#creating-a-bluesky-app-password) with this utility!

You will need to install `node` to run this tool. Here are [the instructions](https://nodejs.org/en/download/package-manager).

Now you can export your followers to CSV:

```sh
npx @numeno/bsky-follows followers --user=<username> --password=<password> --output=followers.csv --format=csv
```

For more options check out `npx @numeno/bsky-follows --help`.

Brought to you by the nice folks at [numeno.ai](https://numeno.ai).

## Creating a Bluesky app password

An App Password is a password you can create in Bluesky and which allows an external app to sign into your account. The advantage of using an app password instead of a regular password is that you can delete the app password later, ensuring the app no longer has access to your account.

To create a Bluesky password go to your [Settings page](https://bsky.app/settings). Then select `Privacy and Security > App passwords > Add app password`. Select a nice name for your password (eg. `bsky-follows`), click `Next` and then make sure you copy the code `abcd-abcd-abcd-abcd` somewhere safe.

You can now use your user name and this code to use `bsky-follows`.
npm package: @numeralpharic/node-kakao
Description: Loco protocol compatible library
Author: numeralpharic
Latest version: 4.5.4

# forked from [storycraft/node-kakao](https://github.com/storycraft/node-kakao/)

# NodeKakao - Loco protocol compatible library

```js
const node_kakao = require("@numeralpharic/node-kakao");
```

Node

```
npm i --save @numeralpharic/node-kakao
```

> This implemention can stop working anytime.

## Warning

Abusing this client can cause permanent service restriction.

## Example

See `examples` folder. Examples are written in typescript.

## Documentation

[TypeDoc](https://storycraft.github.io/node-kakao/)

## Migrating from v3

See `migration-v3.md`

## License

node-kakao is following MIT License.\
See `LICENSE` for full text.

## Basic Reference

[pykakao](https://github.com/hallazzang/pykakao/)(hallazzang)\
[pykakao](https://github.com/ssut/pykakao)(ssut)

- [[KakaoTalk+] LOCO 프로토콜 분석 (1)](http://www.bpak.org/blog/2012/12/kakaotalk-loco-프로토콜-분석-1/)
- [[KakaoTalk+] LOCO 프로토콜 분석 (2)](http://www.bpak.org/blog/2012/12/kakaotalk-loco-프로토콜-분석-2/)
- [[KakaoTalk+] LOCO 프로토콜 분석 (3)](http://www.bpak.org/blog/2012/12/kakaotalk-loco-프로토콜-분석-3/)
- [[KakaoTalk+] LOCO 프로토콜 분석 (4)](http://www.bpak.org/blog/2012/12/kakaotalk-loco-프로토콜-분석-4/)
- [[KakaoTalkPC] 카카오톡 PC 버전 분석 (1)](https://www.bpak.org/blog/2013/08/kakaotalkpc-카카오톡-pc-버전-분석-1/)
npm package: @numeraswiss/tools-clipboard
Description: Copier dans le presse-papier avec toast, sans code JS (Webflow)
Author: numera.swiss
Latest version: 2.1.0

# ns-clipboard – Copier dans le presse-papier sur Webflow

`ns-clipboard` est un outil JavaScript ultra-léger permettant d’ajouter une fonctionnalité de **copie au clic** sur n’importe quel élément Webflow.  
Aucun JS personnalisé à écrire : il suffit d’ajouter un attribut `ns-clipboard`.

---

## Utilisation via CDN

```html
<script src="https://cdn.jsdelivr.net/npm/@numeraswiss/tools-clipboard@1/clipboard.js"></script>
```

Ce script charge automatiquement `ns-core` si nécessaire.

---

## Exemple simple

```html
<div ns-clipboard="Ceci est un texte à copier">
  Cliquez ici pour copier
</div>
```

> Si `ns-clipboard` n’est pas précisé, l’outil copiera `textContent` de l’élément.

---

## Attributs disponibles

| Attribut                | Description                                                                 |
|-------------------------|-----------------------------------------------------------------------------|
| `ns-clipboard`          | Texte à copier (sinon `textContent` sera utilisé)                           |
| `ns-clipboard-toast`    | Définit si un toast "Copié !" doit apparaître (`true` ou `false`)           |
| `ns-clipboard-message`  | (à venir) Message personnalisé à afficher dans le toast                     |

---

## Activation automatique

Tous les éléments ayant l’attribut `[ns-clipboard]` sont automatiquement activés.  
L’outil observe aussi les éléments ajoutés dynamiquement (CMS, filtres, etc.).

---

## Exemple Webflow complet

```html
<!-- Exemple : copie dynamique avec feedback -->
<div ns-clipboard="Email copié !" class="bouton">
  Copier l'email
</div>

<!-- Option : désactiver le toast pour un élément spécifique -->
<div ns-clipboard="token-ABC123" ns-clipboard-toast="false">
  Copier sans feedback
</div>

<!-- Ou désactiver globalement dans le script -->
<script src="https://cdn.jsdelivr.net/npm/@numeraswiss/tools-clipboard@1/clipboard.js" ns-clipboard-toast="false"></script>
```

---

## Développement local

```bash
pnpm build --filter ns-clipboard
pnpm serve
```

Puis dans ta page HTML :

```html
<script src="http://127.0.0.1:5500/packages/ns-clipboard/dist/clipboard.js"></script>
```

---

## Liens

- Fait partie de la suite `nsTools` : [github.com/rricol/nsTools](https://github.com/rricol/nsTools)
- Développé par [@rricol](https://github.com/rricol) pour [numera.swiss](https://numera.swiss)

---

## Licence

MIT
npm package: @numeric-io/zod
Description: Numeric's fork of Zod that does not deep copy objects and records when parsing.
Author: Justin Chang
Latest version: 2.0.1

# Zod (Numeric fork)

This fork does not deep copy objects and records when parsing. This speeds parsing up by quite a bit (around 2x on standard use cases for our app). For strict and strip parsing, the extra keys are just deleted from the input object.

Because of this, I also removed the following features which did not make sense when the input data is mutable:

- catch
- coerce
- default
- intersection/and (in favor of merge)
- pipe
- preprocess
- transform

I've kept refinements in for now, since they don't affect anything. But I do hate them.

All tests have been updated and pass.
npm package: @numericaltechnologies/curator-js
Description: curator-js is a utility package used to provide read / write lock features from Apache ZooKeeper as the server
Author: Numerical Technologies Pte Ltd
Latest version: 2.0.2

# Introduction 
curator-js is a simple shared lock library that has zookeeper as a dependency, it offers features to acquire and release both read and write locks with self-recovery mechanism.

## Installation

### IDE
Download and install the latest stable version of [Visual Studio Code](https://code.visualstudio.com/).

### Extensions
[ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) - Integrates ESLint JavaScript into VS Code.

[Docker](https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-docker) - Provides Intellisense and syntax checking to Docker-related files

### Runtime Environment
Download and install the latest stable version of [Node](https://nodejs.org/en/).

### Dependency Management
Install [Pnpm](https://pnpm.io/installation)

```bash
npm install -g pnpm
```

Install all the dependencies needed to run the application.

```bash
pnpm i
# Alternative, more verbose version of installing
pnpm install
```

### How to distribute
```bash
pnpm build
```

Commit all the emitted declaration and typescript files.