open-index/open-npm huggingface dataset:
npm package: @rivium/flags-node
Description: Rivium Feature Flags SDK for Node.js - Server-side feature flag management
Author: Rivium
Latest version: 0.1.0

<p align="center">
  <a href="https://rivium.co">
    <img src="https://rivium.co/logo.png" alt="Rivium" width="120" />
  </a>
</p>

<h3 align="center">Rivium Flags Node.js SDK</h3>

<p align="center">
  Server-side feature flag management for Node.js with targeting rules and rollout control.
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@rivium/flags-node"><img src="https://img.shields.io/npm/v/@rivium/flags-node.svg" alt="npm" /></a>
  <img src="https://img.shields.io/badge/Node.js-18+-339933?logo=node.js&logoColor=white" alt="Node.js 18+" />
  <img src="https://img.shields.io/badge/TypeScript-5+-3178C6?logo=typescript&logoColor=white" alt="TypeScript 5+" />
  <img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="MIT License" />
</p>

---

## Installation

```bash
npm install @rivium/flags-node
```

## Quick Start

```typescript
import { RiviumFlags } from '@rivium/flags-node';

const flags = new RiviumFlags({
  apiKey: 'YOUR_API_KEY',
  serverSecret: 'YOUR_SERVER_SECRET',
  environment: 'production',
});

await flags.init();

// Check if a flag is enabled
const darkMode = flags.isEnabled('dark_mode', { userId: 'user-123' });

// Get flag value
const variant = flags.getValue('checkout_flow', { userId: 'user-123' });

// Full evaluation with targeting
const result = flags.evaluate('premium_banner', {
  userId: 'user-123',
  userAttributes: { plan: 'pro', country: 'US' },
});
console.log(result.enabled, result.value, result.variant);

// Refresh flags from server
await flags.refresh();
```

## Features

- **Server-Side Evaluation** — Secure evaluation with `apiKey` + `serverSecret` (secrets never exposed to client)
- **Per-Request Context** — Pass `userId` and `userAttributes` per call with no shared state
- **Boolean & Multivariate Flags** — Simple on/off toggles or multi-variant flags with weighted distribution
- **Targeting Rules** — Target users by attributes (equals, contains, regex, in, greater_than, and more)
- **Rollout Percentages** — Gradual rollouts with deterministic MD5-based bucketing
- **Environment Overrides** — Separate flag values per environment (development, staging, production)
- **TypeScript** — Full type safety with exported types and declarations

## Documentation

For full documentation, visit [rivium.co/docs](https://rivium.co/docs).

## License

MIT License — see [LICENSE](LICENSE) for details.
npm package: @rivium/pn-protocol
Description: Lightweight messaging protocol layer by Rivium Push for web
Author: Rivium
Latest version: 0.1.0

# PN Protocol — Web

Lightweight messaging protocol layer by Rivium Push for web applications.

[![npm](https://img.shields.io/npm/v/@rivium/pn-protocol)](https://www.npmjs.com/package/@rivium/pn-protocol)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

## Installation

```bash
npm install @rivium/pn-protocol
```

## Documentation

- [Rivium Cloud](https://rivium.co/cloud)
- [Rivium Console](https://console.rivium.co)

## License

MIT
npm package: @rivium/storage-react-native
Description: Official React Native SDK for RiviumStorage - File storage and image transformation service
Author: Rivium
Latest version: 0.1.0

<p align="center">
  <a href="https://rivium.co">
    <img src="https://rivium.co/logo.png" alt="Rivium" width="120" />
  </a>
</p>

<h3 align="center">Rivium Storage React Native SDK</h3>

<p align="center">
  File storage and image transformation SDK for React Native with upload, download, and on-the-fly image processing.
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@rivium-storage/react-native"><img src="https://img.shields.io/npm/v/@rivium-storage/react-native.svg" alt="npm" /></a>
  <img src="https://img.shields.io/badge/TypeScript-5.0+-3178C6?logo=typescript&logoColor=white" alt="TypeScript 5.0+" />
  <img src="https://img.shields.io/badge/React_Native-0.60+-61DAFB?logo=react&logoColor=black" alt="React Native 0.60+" />
  <img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="MIT License" />
</p>

---

## Installation

```bash
npm install @rivium-storage/react-native
```

## Quick Start

```typescript
import { RiviumStorage } from '@rivium-storage/react-native';

// Initialize
const storage = new RiviumStorage({ apiKey: 'YOUR_API_KEY' });

// Upload a file
const file = await storage.upload('my-bucket-id', 'images/photo.jpg', imageData, {
  contentType: 'image/jpeg',
});
console.log('Uploaded:', file.url ?? file.id);

// Download a file
const data = await storage.download(file.id);

// Generate a transform URL (200x200 WebP thumbnail)
const url = storage.getTransformUrl(file.id, {
  width: 200,
  height: 200,
  format: 'webp',
});

// Delete a file
await storage.delete(file.id);
```

## Features

- **File Upload & Download** — Upload from string, Uint8Array, or base64 with metadata
- **Bucket Management** — List, get by ID or name
- **URL Generation** — Public URLs, download URLs, and transform URLs
- **Image Transformations** — Resize, crop, format conversion, blur, sharpen, rotate
- **Policy Enforcement** — User-scoped access control via `userId`
- **TypeScript First** — Full type definitions included
- **Zero Dependencies** — Pure fetch-based, works on iOS and Android

## Documentation

For full documentation, visit [rivium.co/docs](https://rivium.co/cloud/rivium-storage/docs/sdks-react-native).
- [Rivium Cloud](https://rivium.co/cloud)
- [Rivium Console](https://console.rivium.co)

## License

MIT License — see [LICENSE](LICENSE) for details.
npm package: @rivium/storage-web
Description: Official Web SDK for RiviumStorage - File storage and image transformation service
Author: Rivium
Latest version: 0.1.0

<p align="center">
  <a href="https://rivium.co">
    <img src="https://rivium.co/logo.png" alt="Rivium" width="120" />
  </a>
</p>

<h3 align="center">Rivium Storage Web SDK</h3>

<p align="center">
  File storage and image transformation SDK for the browser with upload, download, and on-the-fly image processing.
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@rivium-storage/web"><img src="https://img.shields.io/npm/v/@rivium-storage/web.svg" alt="npm" /></a>
  <img src="https://img.shields.io/badge/TypeScript-5.0+-3178C6?logo=typescript&logoColor=white" alt="TypeScript 5.0+" />
  <img src="https://img.shields.io/badge/Browser-ES2020+-F7DF1E?logo=javascript&logoColor=black" alt="Browser" />
  <img src="https://img.shields.io/badge/License-MIT-blue.svg" alt="MIT License" />
</p>

---

## Installation

```bash
npm install @rivium-storage/web
```

## Quick Start

```typescript
import { RiviumStorage } from '@rivium-storage/web';

// Initialize
const storage = new RiviumStorage({ apiKey: 'YOUR_API_KEY' });

// Upload a file
const file = await storage.upload('my-bucket-id', 'images/photo.jpg', imageData, {
  contentType: 'image/jpeg',
});
console.log('Uploaded:', file.url ?? file.id);

// Download a file
const data = await storage.download(file.id);

// Generate a transform URL (200x200 WebP thumbnail)
const url = storage.getTransformUrl(file.id, {
  width: 200,
  height: 200,
  format: 'webp',
});

// Delete a file
await storage.delete(file.id);
```

## Features

- **File Upload & Download** — Upload File, Blob, Uint8Array, or string with metadata
- **Bucket Management** — List, get by ID or name
- **URL Generation** — Public URLs, download URLs, and transform URLs
- **Image Transformations** — Resize, crop, format conversion, blur, sharpen, rotate
- **Policy Enforcement** — User-scoped access control via `userId`
- **TypeScript First** — Full type definitions included
- **Zero Dependencies** — Pure fetch-based, works in all modern browsers

## Documentation

For full documentation, visit [rivium.co/docs](https://rivium.co/cloud/rivium-storage/docs/sdks-web).
- [Rivium Cloud](https://rivium.co/cloud)
- [Rivium Console](https://console.rivium.co)

## License

MIT License — see [LICENSE](LICENSE) for details.
npm package: @rivium/sync-react-native
Description: React Native SDK for RiviumSync realtime database - Firebase alternative
Author: Rivium
Latest version: 0.1.0

# @rivium/sync-react-native

[![npm version](https://img.shields.io/npm/v/@rivium/sync-react-native.svg)](https://www.npmjs.com/package/@rivium/sync-react-native)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

React Native SDK for RiviumSync - a Firebase Realtime Database alternative with MQTT-based sync.

## Installation

```bash
npm install @rivium/sync-react-native
# or
yarn add @rivium/sync-react-native
```

### iOS Setup

```bash
cd ios && pod install
```

### Android Setup

No additional setup required. The SDK automatically resolves from Maven Central.

## Quick Start

```typescript
import RiviumSync from '@rivium/sync-react-native';

// Initialize
await RiviumSync.init({
  apiKey: 'your-api-key',
  debugMode: true,
});

// Connect
await RiviumSync.connect();

// Add a document
const doc = await RiviumSync.addDocument({
  databaseId: 'my-db',
  collectionId: 'users',
  data: { name: 'Alice', age: 30 },
});

// Listen to collection changes
RiviumSync.listenCollection({
  databaseId: 'my-db',
  collectionId: 'users',
  onUpdate: (documents) => {
    console.log('Documents updated:', documents);
  },
});
```

## Features

- Real-time data synchronization via MQTT
- Offline-first with automatic sync on reconnect
- Document CRUD operations
- Collection and document listeners
- Query support with filters, ordering, and pagination
- Batch operations
- Conflict resolution strategies

## Documentation

For full documentation, visit [rivium.co](https://rivium.co/).

## License

MIT
npm package: @rivium/sync-web
Description: Web SDK for RiviumSync - Firebase Realtime Database alternative with MQTT sync
Author: Rivium
Latest version: 0.1.0

# @rivium/sync-web

Official Web SDK for RiviumSync Realtime Database.

[![npm](https://img.shields.io/npm/v/@rivium/sync-web.svg)](https://www.npmjs.com/package/@rivium/sync-web)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

## Features

- **Realtime sync** - MQTT over WebSocket for instant updates
- **Firebase-like API** - database → collection → document
- **Offline support** - IndexedDB caching
- **Query support** - Filters, sorting, pagination
- **Auto reconnection** - Exponential backoff
- **TypeScript** - Full type definitions included

## Installation

```bash
npm install @rivium/sync-web
```

## Quick Start

```typescript
import { RiviumSync } from '@rivium/sync-web';

const riviumSync = new RiviumSync({
  apiKey: 'your-api-key',
});

await riviumSync.connect();

const db = riviumSync.database('your-database-id');
const users = db.collection('users');

// Add a document
const newUser = await users.add({
  name: 'John Doe',
  email: 'john@example.com',
});

// Listen for realtime updates
users.onSnapshot((docs) => {
  console.log('Users updated:', docs);
});
```

## Documentation

- [Rivium Cloud](https://rivium.co/cloud)
- [Rivium Console](https://console.rivium.co)

## License

MIT
npm package: @rivkesse/emoji-category-map
Description: Unicode to category emoji mapping. Based on teh work of Ionică Bizău. <bizauionica@gmail.com> (http://ionicabizau.net)
Author: Ionică Bizău
Latest version: 1.0.2


# emoji-unicode-map

 [![PayPal](https://img.shields.io/badge/%24-paypal-f39c12.svg)][paypal-donations] [![AMA](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/emoji-unicode-map.svg)](https://www.npmjs.com/package/emoji-unicode-map) [![Downloads](https://img.shields.io/npm/dt/emoji-unicode-map.svg)](https://www.npmjs.com/package/emoji-unicode-map) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github)

> Unicode to name emoji mapping.

## :cloud: Installation

```sh
$ npm i --save emoji-unicode-map
```


## :clipboard: Example



```js
const unicode = require("emoji-unicode-map");

console.log(unicode.get("😍"));
// heart_eyes

console.log(unicode.emoji);
// { '💯': '100',
//   '🔢': '1234',
//   '😀': 'grinning',
//   '😬': 'grimacing',
//   '😁': 'grin',
//   '😂': 'joy',
//   ...
// }
```

## :memo: Documentation


### `get(char)`
Gets the emoji name, by providing the character.

#### Params
- **String** `char`: The emoji character.

#### Return
- **String** The emoji name.



## :yum: How to contribute
Have an idea? Found a bug? See [how to contribute][contributing].


## :scroll: License

[MIT][license] © [Ionică Bizău][website]

[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW
[donate-now]: http://i.imgur.com/6cMbHOC.png

[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(http%3A%2F%2Fionicabizau.net)&year=2016#license-mit
[website]: http://ionicabizau.net
[contributing]: /CONTRIBUTING.md
[docs]: /DOCUMENTATION.md
npm package: @rivkesse/emoji-dictionary
Description: Convert emoji names in unicode characters and vice versa.
Author: Ionică Bizău
Latest version: 1.0.12


# emoji-dictionary

 [![PayPal](https://img.shields.io/badge/%24-paypal-f39c12.svg)][paypal-donations] [![AMA](https://img.shields.io/badge/ask%20me-anything-1abc9c.svg)](https://github.com/IonicaBizau/ama) [![Version](https://img.shields.io/npm/v/emoji-dictionary.svg)](https://www.npmjs.com/package/emoji-dictionary) [![Downloads](https://img.shields.io/npm/dt/emoji-dictionary.svg)](https://www.npmjs.com/package/emoji-dictionary) [![Get help on Codementor](https://cdn.codementor.io/badges/get_help_github.svg)](https://www.codementor.io/johnnyb?utm_source=github&utm_medium=button&utm_term=johnnyb&utm_campaign=github)

> Convert emoji names in unicode characters and vice versa. Get emoji category by emoji unicode.

## :cloud: Installation

```sh
$ npm i --save @rivkesse/emoji-dictionary
```


## :clipboard: Example



```js
const emoji = require("emoji-dictionary");

console.log(emoji.getName("😍"));
// heart_eyes

console.log(emoji.getUnicode("heart_eyes"));
// 😍

console.log(emoji.getCategory("😍"));
// people

console.log(emoji.unicode);
// [ '💯',
//   '🔢',
//   '😀',
//   '😬',
//   '😁',
//   '😂',
//   '😃',
//   '😄',
//   ...
//   '🇿🇲',
//   '🇿🇼' ]

console.log(emoji.names);
// [ '100',
//   '1234',
//   'grinning',
//   'grimacing',
//   'grin',
//   ...
//   'ye',
//   'zm',
//   'zw' ]
```

## :memo: Documentation


### `getName(unicodeChar)`
Gets the name of the unicode emoji.

#### Params
- **String** `unicodeChar`: The emoji unicode character.

#### Return
- **String** The emoji name.

### `getUnicode(name)`
Gets the unicode character by providing the emoji name.

#### Params
- **String** `name`: The emoji name.

#### Return
- **String** The emoji unicode character.

### `getCategory(unicodeChar)`
Gets the category of the unicode emoji.

#### Params
- **String** `unicodeChar`: The emoji unicode character.

#### Return
- **String** The emoji category.


### `getEmojiInfo(unicodeChar)`
Gets the name and category based on the emoji unicode

#### Params
- **String** `unicodeChar`: The emoji unicode character.

#### Return
- **Object** Object containing emoji unicode, name and category



## :yum: How to contribute
Have an idea? Found a bug? See [how to contribute][contributing].


## :scroll: License

[MIT][license] © [Ionică Bizău][website]

[paypal-donations]: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RVXDDLKKLQRJW
[donate-now]: http://i.imgur.com/6cMbHOC.png

[license]: http://showalicense.com/?fullname=Ionic%C4%83%20Biz%C4%83u%20%3Cbizauionica%40gmail.com%3E%20(http%3A%2F%2Fionicabizau.net)&year=2016#license-mit
[website]: http://ionicabizau.net
[contributing]: /CONTRIBUTING.md
[docs]: /DOCUMENTATION.md
npm package: @rivo-gg/geld
Description: A comprehensive TypeScript/JavaScript library for financial operations and validations.
Latest version: 0.0.54

# @rivo-gg/geld

A comprehensive TypeScript/JavaScript library for financial operations and validations. Currently featuring IBAN (International Bank Account Number) validation and formatting, with more financial tools planned for future releases.

[![Coverage](https://img.shields.io/badge/coverage-100%25-green.svg)](https://github.com/rivo-gg/geld)

> 'Geld' means 'money' in German, Dutch and Afrikaans. That's why we chose that name for our financial tools.

## Installation

```bash
npm install @rivo-gg/geld
# or
yarn add @rivo-gg/geld
# or
pnpm add @rivo-gg/geld
```

## Features

- IBAN validation using MOD 97 algorithm
- IBAN formatting for display
- Support for all standard IBAN formats
- Zero dependencies
- TypeScript support

## Usage

```typescript
import { iban } from "@rivo-gg/geld";

// Validate an IBAN
const isValid = iban.isValid("DE89370400440532013000");
console.log(isValid); // true

// Format an IBAN for display (with default space separator)
const formatted = iban.printFormat("DE89370400440532013000");
console.log(formatted); // 'DE89 3704 0044 0532 0130 00'

// Format with custom separator
const customFormatted = iban.printFormat("DE89370400440532013000", "-");
console.log(customFormatted); // 'DE89-3704-0044-0532-0130-00'

// Validate with automatic cleaning (removes spaces and special characters)
const isValidWithCleaning = iban.isValid("DE89 3704 0044 0532 0130 00", true);
console.log(isValidWithCleaning); // true
```

## API Reference

### `iban.isValid(input: string, clean?: boolean): boolean`

Validates an IBAN using the MOD 97 algorithm.

- `input`: The IBAN string to validate
- `clean`: (optional) Whether to clean the IBAN before validation (removes spaces and special characters). Defaults to `false`
- Returns: `boolean` - `true` if the IBAN is valid, `false` otherwise

### `iban.printFormat(iban: string, separator?: string): string`

Formats an IBAN for display purposes.

- `iban`: The IBAN string to format
- `separator`: (optional) The separator to use between groups. Defaults to space (' ')
- Returns: `string` - The formatted IBAN

## License

MIT © [Rivo](LICENSE)
npm package: @rivo-ts/math
Description: Type-level math operations for TypeScript. This package is essentially an independent part of the Rivo project which does not rely on `@rivo-ts/core`. Many other packages in the Rivo project depend on this package.
Author: Snowflyt
Latest version: 0.0.0-dev.20240707.5

# @rivo-ts/math

Type-level math operations for TypeScript.

This package is essentially an independent part of the [Rivo](https://github.com/Snowflyt/rivo) project which does not rely on [@rivo-ts/core](https://github.com/Snowflyt/rivo/tree/main/core). Many other packages in the Rivo project depend on this package.

You can use it with any TypeScript project that needs type-level math operations, not just Rivo.

## Usage

```typescript
import type { Add, Div, Exp, Pow } from "@rivo-ts/math";

type R1 = Add<1339642.329553, -2775689265.941>;
//   ^?: -2774349623.611447
type R2 = Div<388.6, 15>;
//   ^?: 25.906666666666666
type R3 = Exp<3>;
//   ^?: 20.063392857142855
type R4 = Pow<2, 3>;
//   ^?: 8
type R5 = Pow<2, 0.5>;
//   ^?: 1.414212636572998
```
npm package: @rivuty/oxfmt-config
Description: Shared oxfmt configuration for TypeScript projects
Author: Oleg Michailov
Latest version: 1.0.0

# @rivuty/oxfmt-config

Shared [oxfmt](https://oxc.rs/docs/guide/usage/formatter.html) configuration.

Includes opinionated defaults:

- 120 character print width
- Single quotes
- Arrow function parens omitted when possible
- Import sorting with React imports grouped separately from other external packages

## Installation

```sh
npm add -D @rivuty/oxfmt-config oxfmt
# or
pnpm add -D @rivuty/oxfmt-config oxfmt
```

## Usage

Create an `oxfmt.config.ts` at the root of your project:

```ts
import { config } from '@rivuty/oxfmt-config';

export default config;
```

Then run the formatter:

```sh
# Check formatting
oxfmt --check

# Fix formatting
oxfmt --write
```

## License

@rivuty/oxfmt-config is open-sourced under the [MIT license](LICENSE)
npm package: @rivuty/oxlint-config
Description: Shared oxlint configurations for TypeScript projects
Author: Oleg Michailov
Latest version: 1.2.0

# @rivuty/oxlint-config

Shared [oxlint](https://oxc.rs/docs/guide/usage/linter) configurations.

## Installation

```sh
npm add -D @rivuty/oxlint-config oxlint
# or
pnpm add -D @rivuty/oxlint-config oxlint
```

## Usage

Create an `oxlint.config.ts` in your project and import the desired config:

### TypeScript projects

The `typescript` export enables a strict ruleset for TypeScript projects:

```ts
import { defineConfig } from 'oxlint';
import { typescript } from '@rivuty/oxlint-config';

export default defineConfig({
  extends: [typescript],
});
```

### Config file overrides

The `config` export disables rules that conflict with config files (e.g. `vite.config.ts`):

```ts
import { defineConfig } from 'oxlint';
import { config, typescript } from '@rivuty/oxlint-config';

export default defineConfig({
  extends: [typescript, config],
});
```

### Vitest projects

The `vitest` export relaxes rules for test files (`*.test.ts`):

```ts
import { defineConfig } from 'oxlint';
import { typescript, vitest } from '@rivuty/oxlint-config';

export default defineConfig({
  extends: [typescript, vitest],
});
```

### Extending

Use `extends` together with additional rules to customize the config:

```ts
import { defineConfig } from 'oxlint';
import { typescript } from '@rivuty/oxlint-config';

export default defineConfig({
  extends: [typescript],
  rules: {
    'no-console': 'warn',
  },
});
```

## Exports

| Export       | Description                                                                                    |
| ------------ | ---------------------------------------------------------------------------------------------- |
| `typescript` | Strict ruleset for TypeScript projects (all categories set to `error`)                         |
| `config`     | Overrides for config files — relaxes `import/no-default-export` and `import/no-nodejs-modules` |
| `vitest`     | Overrides for test files — relaxes rules that are impractical in tests                         |

## License

@rivuty/oxlint-config is open-sourced under the [MIT license](LICENSE)