open-index/open-npm huggingface dataset:
npm package: @ream/plugin-vuex
Description: ## Install
Latest version: 1.0.0-beta.2

# @ream/plugin-vuex

## Install

```bash
npm i @ream/plugin-vuex vuex
# Or Yarn
yarn add @ream/plugin-vuex vuex
```

## Usage

Add it to your `ream.config.js`:

```js
import vuex from '@ream/plugin-vuex'

export default {
  plugins: [vuex()],
}
```

This plugin assumes you have created a Vuex store instance in `@/store`, `@` is an alias to your source directory.

```ts
// store.ts or store/index.ts
import { createStore } from 'vuex'

export default () =>
  createStore({
    state: {
      count: 0,
    },
  })
```

If you want to prefetch data during SSR, add a `getInitialState` action, it will be invoked before server-side rendering and each navigation in browser:

```ts
createStore({
  state: {
    post: null,
  },
  actions: {
    async getInitialState({ commit }, { to, from }) {
      if (to.name === 'posts/[slug]') {
        const post = await fetchPost(to.params.slug)
        commit('setPost', post)
      }
    },
  },
  mutations: {
    setPost(state, post) {
      state.post = post
    },
  },
})
```

## License

MIT &copy; [EGOIST](https://github.com/sponsors/egoist)
npm package: @ream/vercel-builder
Description: Vercel builder for Ream
Latest version: 0.0.20

# @ream/vercel-builder

In `vercel.json`:

```json
{
  "builds": [
    {
      "src": "ream.config.js",
      "use": "@ream/vercel-builder"
    }
  ]
}
```

## License

MIT &copy; [EGOIST](https://github.com/sponsors/egoist)
npm package: @ream88/homebridge-nuki-latch
Description: Nuki for latched doors
Author: Mario Uher
Latest version: 1.0.0

# homebridge-nuki-latch

A Homebridge plugin which improves Nuki support for doors with latches. In order
for this to work you also need the [Nuki Bridge](https://nuki.io/en/bridge/)
running in [developer
mode](https://nuki.io/en/support/bridge/bridge-features/manage-bridge-settings/).

## Usage

```json
{
  "accessories": [
    {
      "accessory": "NukiLatch",
      "name": "RealFakeDoor"
    }
  ]
}
```

## Development

Most of the code is build upon a homebridge plugin I build a while ago:
[homebridge-mqtt-lock](https://github.com/ream88/homebridge-mqtt-lock)

During development `rsync` helped a lot with syncing the plugin to my Raspberry
Pi which is running homebridge.

```sh
rsync -vr --exclude 'node_modules' --exclude '.git' . docker.local:/home/pi/homebridge/node_modules/homebridge-nuki-latch
```

## License

MIT License
npm package: @reamey/foo
Description: test
Author: leonway
Latest version: 1.0.1

---
title: Foo
order: 0
group:
  path: /
nav:
  title: 组件
  path: /components
---

## Foo

Demo:

<!-- <API></API> -->

```tsx
import React from 'react';
import Foo from '@reamey/foo';
console.log('foo', require('foo'));
export default () => <Foo title="First Demo" />;
```

More skills for writing demo: https://d.umijs.org/guide/basic#write-component-demo
npm package: @reamey/media-preview
Description: test
Author: leonway
Latest version: 1.0.1

---
nav:
  title: Components
  path: /components
---

## MediaPreview

Demo:

<!-- <API></API> -->

```tsx
import React, { useState } from 'react';
import { Button } from 'antd';
import MediaPreview from '@reamey/media-preview';
import audio from '@reamey/sort-media-upload/src/assets/png/audioPreview.png';

export default () => {
  const [show, setShow] = useState();
  return (
    <>
      <Button type="primary" onClick={() => setShow(true)}>
        点击查看预览
      </Button>
      <MediaPreview
        filePath={audio}
        title={'XXX'}
        visible={show}
        onClose={() => setShow(false)}
      />
    </>
  );
};
```

More skills for writing demo: https://d.umijs.org/guide/basic#write-component-demo
npm package: @reamey/provider
Description: test
Author: leonway
Latest version: 1.0.1

---
nav:
  title: Components
  path: /components
---

## MediaPreview

Demo:

<!-- <API></API> -->

```tsx
import React, { useState } from 'react';
import { Button } from 'antd';
import SkyProvider from '@reamey/provider';

export default () => {
  const [show, setShow] = useState();
  return <>provider</>;
};
```

More skills for writing demo: https://d.umijs.org/guide/basic#write-component-demo
npm package: @reamey/sort-media-upload
Description: test
Author: leonway
Latest version: 1.0.1

---
nav:
  title: Components
  path: /components
---

## SortMediaUpload

Demo:

<!-- <API></API> -->

```tsx
import React from 'react';
import SortMediaUpload from '@reamey/sort-media-upload';
import axios from 'axios';

export default () => <SortMediaUpload request={axios} />;
```

More skills for writing demo: https://d.umijs.org/guide/basic#write-component-demo
npm package: @reaperx/grator
Description: A small CLI tool to build and run mongodb migrations
Latest version: 1.1.4

# grator
## Install
---
    $ npm install @reaperx/grator

## Usage
---
We will need to set up the environment variables to connect  to mongo database

```
MONGO_DB_USER=
MONGO_DB_PASSWORD=
MONGO_DB_HOST=
MONGO_DB_NAME=
```

- create migration
    
        $ npm run grator -c migration_name

- run migrations

        $ npm run grator -r

- undo last migration

        $ npm run grator -u

## Examples

Into migration file we have an instance of the database, this use https://www.npmjs.com/package/mongodb

```javascript
exports.up = async db => {

   await db.collection('books').update(
    {"reorder": {$exists: true}}, 
    {$rename:{"reorder":"sort"}},
    false,
    true
    );
}

exports.down = async db => {
  
    await db.collection('books').update(
        {"reordenar": {$exists: true}}, 
        {$rename:{"sort":"reorder"}},
        false,
        true
    );
};
```
npm package: @reapimus/fusion
Description: TypeScript support for Fusion
Author: Elttob
Latest version: 0.4.5

<img align="left" src="./gh-assets/logo-dark-theme.svg#gh-dark-mode-only" alt="Fusion"><img align="left" src="./gh-assets/logo-light-theme.svg#gh-light-mode-only" alt="Fusion"><a href="https://elttob.uk/Fusion/latest"><img align="right" src="./gh-assets/link-docs.svg" alt="Docs"></a><a href="https://github.com/Elttob/Fusion/releases"><img align="right" src="./gh-assets/link-download.svg" alt="Download"></a><img src="./gh-assets/clearfloat.svg">

### Futuristic Luau for every universe.

> [!NOTE]
> This is a fork of [Fusion](https://github.com/dphfox/Fusion) with Roblox-TS typings implemented.

Fusion is a portable Luau companion library for simpler, more descriptive code.

With Fusion, assemble straightforward chains of logic that are easy to understand,
predict and debug. Make strong guarantees about what your code will or won't do.
Build joyfully custom-fitted APIs to interact with the world outside of your code.

Fusion provides batteries-included configuration for Roblox, and fantastic extensibility
and integration for anything else Luau.

Piqued your interest? [Get going in minutes with our on-rails tutorial.](https://elttob.uk/Fusion/latest/tutorials)

## License

Fusion is licensed freely under MIT. Go do cool stuff with it, and if you feel
like it, give us a shoutout!
npm package: @reapit-cdk/cloudfront-invalidation
Description: CloudFront invalidations are [very error prone](https://github.com/aws/aws-cdk/issues/15891#issuecomment-966456154), making it hard to invalidate distributions reliably. This construct aims to solve this problem by using a step function which is triggered
Author: Josh Balfour
Latest version: 0.1.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/cloudfront-invalidation/readme.md
npm package: @reapit-cdk/custom-resource-wrapper
Description: This module helps write custom resource handlers. It's designed to work with the [Custom Resource Provider Framework](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.CustomResource.html). It accepts an object which contains event handlers for `onC
Latest version: 0.0.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/modules/custom-resource-wrapper/readme.md
npm package: @reapit-cdk/edge-api
Description: This construct creates a truly globally available API where code executes at the edge. Because changes take a long time to propagate to all edge locations, there is a `devMode` flag which will instead deploy your API to a [HTTP API](https://docs.aws.amazo
Author: Josh Balfour
Latest version: 0.1.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/edge-api/readme.md
npm package: @reapit-cdk/edge-api-sdk
Description: Provides convenience wrappers for accepting and responding to [@reapit-cdk/edge-api]('../../constructs/edge-api/readme.md') lambda requests.
Latest version: 0.0.25

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/modules/edge-api-sdk/readme.md
npm package: @reapit-cdk/email-receiver
Description: This construct sets up everything necessary to receive email. The emails get stored in a dynamodb table, queryable by recipient. This is designed to be used in end-to-end tests, with the [@reapit-cdk/email-receiver-client](../../libs/email-receiver-client
Author: Josh Balfour
Latest version: 0.1.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/email-receiver/readme.md
npm package: @reapit-cdk/email-receiver-client
Description: This module helps you write tests which rely on receiving emails. Once you have set up [@reapit-cdk/email-receiver](../../constructs/email-receiver/), this module helps you interact with the dynamodb table it creates. You'll have to export the table arn a
Latest version: 0.0.3

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/modules/email-receiver-client/readme.md
npm package: @reapit-cdk/replicated-secret
Description: Creates a Secret and replicates it across the given regions. Requires a [ReplicatedKey](../replicated-key/readme.md) be passed in.
Author: Josh Balfour
Latest version: 0.1.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/replicated-secret/readme.md
npm package: @reapit-cdk/userpool-domain
Description: This construct returns the given Cognito UserPool's UserPoolDomain, or creates one. This resolves an issue with [AWS::Cognito::UserPoolDomain](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooldomain.html), since 
Author: Josh Balfour
Latest version: 0.1.2

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/userpool-domain/readme.md
npm package: @reapit-cdk/wildcard-certificate
Description: This construct returns a wildcard certificate valid for subdomains of the given domain names, creating and validating on if it doesn't exist. It supports cross-account DNS validation, you can pass in arns of roles from other accounts and it'll assume them
Author: Josh Balfour
Latest version: 0.1.0

https://github.com/reapit/ts-cdk-constructs/blob/main/packages/constructs/wildcard-certificate/readme.md
npm package: @reapit/foundations-ts-definitions
Description: Automated TypeScript definitions for the Foundations API Platform. Automatically generates up to date TypeScript type definitions from Platform API swagger documentation.
Latest version: 2.1.23

# Foundations TS Definitions:

Automated TypeScript definitions for the Foundations API Platform. Automatically generates up to date TypeScript type definitions from Platform API swagger documentation. 

For detailed documentation [visit here](https://foundations-documentation.reapit.cloud/app-development/foundations-ts-defintions).
npm package: @reapit/generator-react-app-scaffolder
Description: An opinionated gnerator for scaffolding TypeScript React Redux apps
Author: Will McVay
Latest version: 1.0.1

# Reapit React App Scaffolder

A CLI for generating React Apps, optimised for the marketplace, including Reapit Connect authentication and Elements.

For internal scaffolds, navigate to project folder and execute `yarn scaffold` to load the CLI.

## DEPRECATED - Please use https://www.npmjs.com/package/@reapit/cra-template-foundations

We will continue to offer patches and bugfixes for this package for internal Reapit Users however, for Reapit Partner Developers we strongly suggest that you migrate to `@reapit/cra-template-foundations` for a better developer experience and the LTS benefits of Facebook's React Scripts package.
npm package: @reapit/storybook-addon-html
Description: A Storybook addon that extracts and displays compiled syntax-highlighted HTML
Author: Whitespace
Latest version: 5.0.1

**Fork of original module**

Forked purely to ensure Prettier is tagged at v2.2.X - a regex was introduced in Prettier v2.3.x which causes my Storybook build to fail. Full credit and thanks to the maintainers of this project.

# Storybook Addon HTML

This addon for Storybook adds a tab that displays the compiled HTML for each
story. It uses [highlight.js](https://highlightjs.org/) for syntax highlighting.

![Animated preview](https://raw.githubusercontent.com/whitespace-se/storybook-addon-html/master/image.gif)

## Getting Started

With NPM:

```sh
npm i --save-dev @whitespace/storybook-addon-html
```

With Yarn:

```sh
yarn add -D @whitespace/storybook-addon-html
```

### Register addon

```js
// .storybook/main.js

module.exports = {
  // ...
  addons: [
    '@whitespace/storybook-addon-html',
    // ...
  ],
};
```

## Usage

The HTML is formatted with Prettier. You can override the Prettier config
(except `parser` and `plugins`) by providing an object following the
[Prettier API override format](https://prettier.io/docs/en/options.html) in the
`html` parameter:

```js
// .storybook/preview.js

export const parameters = {
  // ...
  html: {
    prettier: {
      tabWidth: 4,
      useTabs: false,
      htmlWhitespaceSensitivity: 'strict',
    },
  },
};
```

You can override the wrapper element selector used to grab the component HTML.

```js
export const parameters = {
  html: {
    root: '#my-custom-wrapper', // default: #root
  },
};
```

When using Web Components, the HTML will contain empty comments, i.e. `<!---->`.
If you want to remove these, use the `removeEmptyComments` parameter:

```js
export const parameters = {
  html: {
    removeEmptyComments: true, // default: false
  },
};
```

You can override the `showLineNumbers` and `wrapLines` settings for the syntax
highlighter by using the `highlighter` parameter:

```js
export const parameters = {
  html: {
    highlighter: {
      showLineNumbers: true, // default: false
      wrapLines: false, // default: true
    },
  },
};
```

## Supported frameworks

As of version 4.0.0 all frameworks are supported per default 🎉
npm package: @reaqtive/layout
Description: reaqtive layout components
Author: paolo deregibus
Latest version: 0.0.0-beta.18

This is an experimental an undocumented section which is likely to change in the future. I you would like to use Reaqtive go to the [homepage](https://github.com/xuuajii/reaqtive/tree/master) or see the other packages:
- [@reaqtive/q](https://github.com/xuuajii/reaqtive/tree/master/packages/q)
- [@reaqtive/components](https://github.com/xuuajii/reaqtive/tree/master/packages/components)
      
undefined
undefined
undefined
npm package: @rearguard/batch
Description: A batch release "cache".
Latest version: 1.9.6

# @rearguard/batch.

## Installation.

```bash
npm i @rearguard/batch
```

## Intro.

`@rearguard/batch` is an LRU batching cache mechanism, it allows stacking and progressively releasing an array of data based on ticking mechanism.

## Usage.

```javascript
const {batchLru} = require('@rearguard/batch');

/**
 * max items: 2
 * ttl: 1000ms
 * fn: callback
 * timeout: timeout in order to release the resource
 */
const batch = batchLru(2, 1000, items => {
  console.log(items);
});

batch.add(1);
batch.add({foo: 'bar'});

// after 1000ms
// => [1, {foo: 'bar'}]
```

## Tests.

```bash
yarn test
```
npm package: @rearguard/is-bot
Description: Ultra fast bot/crawler detector using user agent strings.
Latest version: 1.9.6

# @rearguard/is-bot.

## Installation.

```bash
npm i @rearguard/is-bot
```

## Intro.

`@rearguard/is-bot` is a validator for User-Agent strings, it allows efficiently detecting bots, crawlers and scrappers. This library stays up to date with live data provided by [https://www.myip.ms](https://www.myip.ms)

## Usage.

```javascript
const {isBot} = require('@rearguard/is-bot');

isBot(
  'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36',
); // false

isBot(
  'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36',
); // => false
isBot(
  'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)',
); // => true
```

## Benchmarks.

`@rearguard/is-bot` is fast and intuitive, you can find benchmarks against similar libraries in the [`/bench`](/bench) folder.

## Tests.

```bash
yarn test
```
npm package: @rearguard/is-burner
Description: A fast email burner checker.
Latest version: 1.9.6

# @rearguard/is-burner.

## Installation.

```bash
npm i @rearguard/is-burner
```

## Intro.

`@rearguard/is-burner` is a validator for email addresses, it validates that an email adress is not coming from a disposable email provider. Stays automatically up to date with live lists of disposable email providers.

## Usage.

```javascript
const {isBurner} = require('@rearguard/is-burner');

isBurner('test@gmail.com'); // false
isBurner('test@yahoo.com'); // false
isBurner('test@zapzap.rent'); // true
```

## Benchmarks.

`@rearguard/is-burner` is fast and intuitive, you can find benchmarks against similar libraries in the [`/bench`](/bench) folder.

## Tests.

```bash
yarn test
```
npm package: @rearguard/is-email
Description: A fast email checker.
Latest version: 1.9.6

# @rearguard/is-email.

## Installation.

```bash
npm i @rearguard/is-email
```

## Intro.

`@rearguard/is-email` is a validator for email addresses, it allows checking when an email address is valid, according to [RFC 5322](https://www.ietf.org/rfc/rfc5322.txt)

## Usage.

```javascript
const {isEmail} = require('@rearguard/is-email');

const longemail = new Array(255).fill('a').join();

isEmail(`${longemail}@gmail.com`); // => false
isEmail(`@gmail.com`); // => false
isEmail('hello@gmail.com'); // => false
isEmail('hello@sienna12bourne.ga'); // => true
```

## Benchmarks.

`@rearguard/is-email` is fast and intuitive, you can find benchmarks against similar libraries in the [`/bench`](/bench) folder.

## Tests.

```bash
yarn test
```
npm package: @rearm/ctx
Description: a stable and declarative interface to the concept of "context" in React
Author: Frankie Bagnardi
Latest version: 0.1.3

[@rearm/ctx Website](https://rearm.brigand.me/ctx) - [Source Code](https://github.com/brigand/rearm//tree/master/packages/ctx)

<!-- Note: Don't edit this file. See these files:
     - rearm/scripts/readme
     - rearm/packages/ctx/src/__docs__/ctx.mdx -->

# @rearm/ctx

You can install the package with npm or yarn. It requires React 16.4 or newer for
hooks.

```sh
npm install @rearm/ctx
# or
yarn add @rearm/ctx
```

## Intent

The Ctx module provides a stable and declarative interface to the concept of "context"
in React. It's represented as a single object with a `Provider` and a `use` hook as
the two sides.

Unlike a typical React context, a component may subscribe to specific parts of the
context, or computations based on the context. This has been a very important aspect
of react-redux for many years, and can now be leveraged with custom contexts.

## Usage

First create your context instance. You may create as many as you like, and there is
no interaction between separate contexts, so it's suitable for applications and
libraries.

```javascript
import { makeCtx } from 'rearm/lib/Ctx';
const MyCtx = makeCtx();
```

If you're using typescript, you may wish to explicitly define a type for the context.
As you would expect, both `Provider` and `use` will incorporate the generic in their
types.

```typescript
import { makeCtx, Ctx } from 'rearm/lib/Ctx';
const MyCtx: Ctx<{ color: string }> = makeCtx();
```

Anywhere in the tree you can define the context by rendering a `Provider` with the
`value` you would like to pass through context. You may have multiple instances of the
`Provider` rendered in different parts of the page, or "shadow" a parent provider if
they're nested. A `MyCtx.Provider` must exist as an (indirect) parent of any component
attempting to call `MyCtx.use`.

```javascript
render() {
  return (
    <MyCtx.Provider value={{ color: 'hotpink' }}>
      <B />
    </MyCtx.Provider>
  );
}
```

You may then access the context by calling `Ctx.use` with an optional selector
function. If not provided, then the entire context value will be returned.

```javascript
function B() {
  const color = Ctx.use((state) => state.color);
  return <p style={{ color }}>Hello, World!</p>;
}
```

If you use typescript, then the value of `color` should be inferred to be `string`, as
we defined the context to be `Ctx<{ color: string }>`.