open-index/open-npm huggingface dataset:
npm package: @miravicson/learnstorybook-design-system
Description: Storybook design systems tutorial
Author: miravicson
Latest version: 0.2.1

# Storybook design system tutorial

The Storybook design system tutorial is a subset of the full [Storybook design system](https://github.com/storybookjs/design-system/), created as a learning resource for those interested in learning how to write and publish a design system using best in practice techniques.

Learn more in [Storybook tutorials](https://storybook.js.org/tutorials/).
npm package: @mirawision/infopedia
Description: Canonical reference lists (countries, languages, time zones, currencies, etc.) with ergonomic TypeScript helpers.
Author: Yelysei Lukin
Latest version: 1.0.0

# @mirawision/infopedia

Ready‑to‑use lists and helpers for everyday application data: countries, languages, locales, time zones, currencies, and more — with zero dependencies.

## Contents

- Countries and flags
- Country phone codes
- Continents
- Languages
- Locales
- Time zones
- Currencies
- Months and weekdays (English)
- US states and codes

## Installation

```bash
npm install @mirawision/infopedia
```

## Quick Start

```ts
// CommonJS
const { getCountryByISO2, getCurrency } = require('@mirawision/infopedia');

console.log(getCountryByISO2('PL')?.name.en); // "Poland"
console.log(getCurrency('USD')?.symbol);      // "$"
```

## Focused Imports

```ts
// Countries
const { countries, findCountriesByName } = require('@mirawision/infopedia/countries');

// Locales
const { getLocalesByLanguage } = require('@mirawision/infopedia/locales');

// Time zones
const { getTimeZone } = require('@mirawision/infopedia/timezones');
```

## Common Operations

- Find a country by code: `getCountryByISO2('US')`
- Search countries by name: `findCountriesByName('king')`
- Get countries by dial code: `getCountriesByDialCode('+44')`
- Get a language by code: `getLanguageBy639_1('en')`
- List locales for a language: `getLocalesByLanguage('es')`
- Look up a time zone: `getTimeZone('Europe/Warsaw')`
- Look up a currency: `getCurrency('EUR')`
- Find a US state: `getUSState('CA')`

## Notes

- Data is read‑only (arrays are frozen)
- No runtime dependencies

## Contributing

Contributions are always welcome! Feel free to open issues or submit pull requests.

## License

This project is licensed under the MIT License.
npm package: @mirawision/let-me-sync
Description: An out-of-the-box solution to easily synchronize shared files between multiple projects
Author: Yelysei Lukin
Latest version: 1.1.0

# @mirawision/let-me-sync (lms)

`@mirawision/let-me-sync` is a tool to synchronize shared files between multiple projects. It allows you to keep specific files in sync with a global directory, making it easy to manage shared code and resources across different parts of your project.

## Installation

Install `@mirawision/let-me-sync` globally:

```bash
npm install -g @mirawision/let-me-sync
```

Or, install it as a dev dependency in your project:

```bash
npm install --save-dev @mirawision/let-me-sync
```

## Usage

### Set Up Configuration File

Create a configuration file named `lms.config.json` in the root of your project to customize the behavior of the synchronization tool.

#### Configuration Options

- `globalDir`: The global directory for synchronization.
- `syncRules`: An array of rules defining what should be synchronized and how.
  - `local`: The local path of the file or directory.
  - `global`: The global path where the file or directory should be synchronized.
- `ignore`: An array of glob patterns to exclude files or directories from synchronization.

### Synchronizing Files

These scripts can be run manually or attach to certain event like deploys or 

#### Sync to Global

Synchronize files from your local project to the global directory:

```bash
lms to
```

#### Sync from Global

Synchronize files from the global directory to your local project:

```bash
lms from
```

## Usage Example

### Initial Directory Structure

```
/global
  /api
    users.ts
  /components
    avatar.tsx
  /assets
    logo.png
/web
  lms.config.json
  package.json
```

#### Configuration File

```json
{
  "globalDir": "../global",
  "syncRules": [
    {
      "global": "api",
      "local": "src/api"
    },
    {
      "global": "components",
      "local": "src/components/common",
    },
    {
      "global": "assets/logo.png",
      "local": "assets/logo/default_logo.png"
    }
  ],
  "ignore": ["node_modules/**", "dist/**"]
}
```

### Running the Sync

Sync from global directory to local project

```bash
lms from
```

### Directory Structure After Sync

```
/global
  /api
    users.ts
  /components
    avatar.tsx
  /assets
    logo.png
/web
  /assets
    /logo
      default_logo.png
  /src
    /api
      users.ts
    /components
      /common
        avatar.tsx
  lms.config.json
  package.json
```

## Contributing

Contributions are always welcome! Feel free to open issues or submit pull requests.

## License

This project is licensed under the MIT License.
npm package: @mirazmac/eagerform
Description: A vanilla javascript form validation library based on HTML5 constraints with support for custom rules, messages and localizations.
Author: Miraz Mac
Latest version: 1.0.5

# EagerForm

A vanilla javascript form validation library based on HTML5 constraints with support for custom rules, messages and localizations.

## Story
I'm not a JS developer, in fact I haven't wrote or even dared to write a JavaScript library before this one. But when I needed a vanilla JS form validation library that has customization, localization and support for custom rules, I just couldn't find one that does what I want. There are tons of form validation libraries out there. I tried almost all of them, before I begin to write this, so this is strictly opinionated and not suitable for everyone. I strictly wrote this based on my needs, but I still left the room to modify the options to customize it.

## Features

- HTML5 based vanilla JS form validation
- Support for custom rules
- Support for custom messages (can be defined globally or even set inline)
- Data attribute/JS options based debouncing for inputs
- Data attribute/JS options based delaying for inputs
- Focusing/scrolling to the first error
- Extensive options to customize almost every behavior of the library

## Drawbacks
- Highly opinionated
- Not unit tested
- Support for modern browsers only
npm package: @mirceasellershield/sails-hook-apianalytics
Description: Hook for advanced logging of API requests to a Sails.js server.
Author: Mike McNeil
Latest version: 2.0.4

# sails-hook-apianalytics

A Sails hook for logging detailed request metadata and monitoring your API.

> This hook is for Sails v1 and up, and it also maintains backwards compatibility for Sails <=v0.12.  But be aware that it provides much richer default logging for requests handled via actions2 (which is only available in Sails v1).


## Install

From your sails app:

```bash
$ npm install sails-hook-apianalytics --save
```

That's it!  Next time you lift, and then send a request to the server, you should see stuff getting logged.

It will look something like this:

![screenshot of output](https://cloud.githubusercontent.com/assets/618009/20027313/a1a6abc0-a2de-11e6-985f-306b87aebc9c.png)


## Configuration

This hook works pretty well for most use cases out of the box.

Optionally, you can customize this hook in a few different ways by configuring `sails.config.apianalytics`.

For instance, you might create `config/apianalytics.js`:

```javascript
// `config/apianalytics.js`

module.exports = {

  apianalytics: {

    /**
     * An array of route addresses to monitor.
     *
     * (e.g. [ 'GET /foo/bar', 'POST /foo', 'all /admin/*' ])
     *
     * Defaults to logging all POST, PATCH, PUT, DELETE requests, and all
     * GET requests except for those that appear to be for assets
     * (i.e. using "GET r|^((?![^?]*\\/[^?\\/]+\\.[^?\\/]+(\\?.*)?).)*$|")
     */
    routesToLog: [
      // If you want to log everything- including requests for assets, use the following:
      '/*'
    ],

    /**
     * Request parameters which should NEVER be logged.
     * If seen, they will be replaced with "*REDACTED*"
     *
     * (e.g. "password")
     *
     * > WARNING:
     * > This is a SHALLOW check of request body, querystring, and route path parameters.
     * > Deeply nested properties with these names are not redacted.
     */
    dontLogParams: [
      'password',
      'token'
    ]
  }
};
```


## Help

If you have further questions or are having trouble, click [here](http://sailsjs.com/support).


## Bugs &nbsp; [![NPM version](https://badge.fury.io/js/sails-hook-apianalytics.svg)](http://npmjs.com/package/sails-hook-apianalytics)

To report a bug, [click here](http://sailsjs.com/bugs).


## Contributing

Please observe the guidelines and conventions laid out in the [Sails project contribution guide](http://sailsjs.com/documentation/contributing) when opening issues or submitting pull requests.

[![NPM info](https://nodei.co/npm/sails-hook-apianalytics.png?downloads=true)](http://npmjs.com/package/sails-hook-apianalytics)

## License

MIT &copy; 2013-2016 Mike McNeil

_As for the [Sails framework](http://sailsjs.com), it's free and open-source under the [MIT License](http://sailsjs.com/license) too._
npm package: @mirceasellershield/sails-hook-apianalytics-fork
Description: Hook for advanced logging of API requests to a Sails.js server.
Author: Mike McNeil
Latest version: 2.0.4

# sails-hook-apianalytics

A Sails hook for logging detailed request metadata and monitoring your API.

> This hook is for Sails v1 and up, and it also maintains backwards compatibility for Sails <=v0.12.  But be aware that it provides much richer default logging for requests handled via actions2 (which is only available in Sails v1).


## Install

From your sails app:

```bash
$ npm install sails-hook-apianalytics --save
```

That's it!  Next time you lift, and then send a request to the server, you should see stuff getting logged.

It will look something like this:

![screenshot of output](https://cloud.githubusercontent.com/assets/618009/20027313/a1a6abc0-a2de-11e6-985f-306b87aebc9c.png)


## Configuration

This hook works pretty well for most use cases out of the box.

Optionally, you can customize this hook in a few different ways by configuring `sails.config.apianalytics`.

For instance, you might create `config/apianalytics.js`:

```javascript
// `config/apianalytics.js`

module.exports = {

  apianalytics: {

    /**
     * An array of route addresses to monitor.
     *
     * (e.g. [ 'GET /foo/bar', 'POST /foo', 'all /admin/*' ])
     *
     * Defaults to logging all POST, PATCH, PUT, DELETE requests, and all
     * GET requests except for those that appear to be for assets
     * (i.e. using "GET r|^((?![^?]*\\/[^?\\/]+\\.[^?\\/]+(\\?.*)?).)*$|")
     */
    routesToLog: [
      // If you want to log everything- including requests for assets, use the following:
      '/*'
    ],

    /**
     * Request parameters which should NEVER be logged.
     * If seen, they will be replaced with "*REDACTED*"
     *
     * (e.g. "password")
     *
     * > WARNING:
     * > This is a SHALLOW check of request body, querystring, and route path parameters.
     * > Deeply nested properties with these names are not redacted.
     */
    dontLogParams: [
      'password',
      'token'
    ]
  }
};
```


## Help

If you have further questions or are having trouble, click [here](http://sailsjs.com/support).


## Bugs &nbsp; [![NPM version](https://badge.fury.io/js/sails-hook-apianalytics.svg)](http://npmjs.com/package/sails-hook-apianalytics)

To report a bug, [click here](http://sailsjs.com/bugs).


## Contributing

Please observe the guidelines and conventions laid out in the [Sails project contribution guide](http://sailsjs.com/documentation/contributing) when opening issues or submitting pull requests.

[![NPM info](https://nodei.co/npm/sails-hook-apianalytics.png?downloads=true)](http://npmjs.com/package/sails-hook-apianalytics)

## License

MIT &copy; 2013-2016 Mike McNeil

_As for the [Sails framework](http://sailsjs.com), it's free and open-source under the [MIT License](http://sailsjs.com/license) too._
npm package: @mirco312312/capacitor-google-auth
Description: Google Auth plugin for capacitor.
Author: CodetrixStudio
Latest version: 2.1.1

# CapacitorGoogleAuth
Capacitor plugin for Google Auth.

### Install
```bash
npm i --save @codetrix-studio/capacitor-google-auth

npx cap update
```

### WEB
Add [`clientId`](https://developers.google.com/identity/sign-in/web/sign-in#specify_your_apps_client_id) meta tag to head.
```html
<meta name="google-signin-client_id" content="{your client id here}">
```

Register the plugin by importing it.
```ts
import "@codetrix-studio/capacitor-google-auth";
```

Use it
```ts
import { Plugins } from '@capacitor/core';
Plugins.GoogleAuth.signIn();
```



### AngularFire2
```ts
async googleSignIn() {
  let googleUser = await Plugins.GoogleAuth.signIn();
  const credential = auth.GoogleAuthProvider.credential(googleUser.authentication.idToken);
  return this.afAuth.auth.signInAndRetrieveDataWithCredential(credential);
}
```

### iOS
Make sure you have `GoogleService-Info.plist` with `CLIENT_ID`

Add `REVERSED_CLIENT_ID` as url scheme to `Info.plist`

### Android
Inside your `strings.xml`
```xml
<resources>
  <string name="server_client_id">Your Web Client Key</string>
</resources>
```

Register plugin inside your `MainActivity.onCreate`
```java
this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
  add(GoogleAuth.class);
}});
```

### Configure
Provide configuration in root `capacitor.config.json`
```json
{
  "plugins": {
    "GoogleAuth": {
      "scopes": ["profile", "email"],
      "serverClientId": "xxxxxx-xxxxxxxxxxxxxxxxxx.apps.googleusercontent.com",
      "forceCodeForRefreshToken" : true
    }
  }
}

```

Note : `forceCodeForRefreshToken` force user to select email address to regenerate AuthCode used to get a valid refreshtoken (work on iOS and Android) (This is used for offline access and serverside handling)
npm package: @mirco312312/react-imask
Description: React input mask
Author: Alexey Kryazhev
Latest version: 6.0.6

# React IMask Plugin
react-imask

[![npm version](https://badge.fury.io/js/react-imask.svg)](https://badge.fury.io/js/react-imask)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

<a href="https://opencollective.com/imask/donate" target="_blank">
  <img src="https://opencollective.com/imask/donate/button.png?color=blue" width=300 />
</a>

## Install
`npm install react-imask`

## Mask Input Example
```javascript
import {IMaskInput} from 'react-imask';

<IMaskInput
  mask={Number}
  radix="."
  value="123"
  unmask={true} // true|false|'typed'
  inputRef={el => this.input = el}  // access to nested input
  // DO NOT USE onChange TO HANDLE CHANGES!
  // USE onAccept INSTEAD
  onAccept={
    // depending on prop above first argument is
    // `value` if `unmask=false`,
    // `unmaskedValue` if `unmask=true`,
    // `typedValue` if `unmask='typed'`
    (value, mask) => console.log(value)
  }
  // ...and more mask props in a guide

  // input props also available
  placeholder='Enter number here'
/>
```

## Extend Existing Components
```javascript
import {IMaskMixin} from 'react-imask';

// extend style component
const StyledInput = styled.input`
  color: green;
`;

const MaskedStyledInput = IMaskMixin(({inputRef, ...props}) => (
  <StyledInput
    {...props}
    innerRef={inputRef}  // bind internal input (if you use styled-components V4, use "ref" instead "innerRef")
  />
));

<MaskedStyledInput
  mask={Number}
  radix="."
  onAccept={(value, mask) => console.log(value)}
  // ...and more mask props in a guide

  // ...other styled props
/>
```
More options see in a [guide](https://imask.js.org/guide.html).

## Many Thanks to
[@Yordis Prieto](https://github.com/yordis)

[@Alexander Kiselev](https://github.com/MaaKut)

## Support Development
[Paypal](https://www.paypal.me/alexeykryazhev/3)
npm package: @mirdor/planteria-mcp
Description: MCP server for Planteria
Author: Miguel Rodriguez
Latest version: 0.1.3

# @mirdor/planteria-mcp

A Model Context Protocol (MCP) stdio server that lets MCP-compatible AI clients access your Planteria plans.

It exposes tools to list your latest plans, review pending work, and fetch full plan details. Responses are formatted as Markdown for easy display in chat UIs.

## Requirements

- Node.js 18+
- A Planteria account with an API key

## Get a Planteria API key

- In Planteria, open Settings → API Keys → Create Key.
- Copy the key and keep it secure.

## Configure MCP clients

Below are examples for popular clients. All use the same approach: run via `npx -y @mirdor/planteria-mcp@latest` and provide `PLANTERIA_API_KEY`.

### Cursor

Add to `~/.cursor/mcp.json`:

```json
{
  "Planteria": {
    "command": "npx",
    "args": ["-y", "@mirdor/planteria-mcp@latest"],
    "env": {
      "PLANTERIA_API_KEY": "<YOUR_PLANTERIA_API_KEY>"
    }
  }
}
```

### Codex

Add to `~/.codex/config.toml`:

```toml
[mcp_servers.planteria]
command = "npx"
args = ["-y", "@mirdor/planteria-mcp@latest"]
env = {"PLANTERIA_API_KEY" = "<YOUR_PLANTERIA_API_KEY>"}
```

### Claude Desktop

Add to your Claude Desktop settings JSON under `mcpServers` (path varies by OS):

```json
{
  "mcpServers": {
    "planteria": {
      "command": "npx",
      "args": ["-y", "@mirdor/planteria-mcp@latest"],
      "env": { "PLANTERIA_API_KEY": "YOUR_KEY" }
    }
  }
}
```

## Exposed tools

- list-plans
  - Title: List Plans
  - Description: Return the latest five plans
  - Input: none
  - Output: Markdown with plan headings, ids, and summaries

- get-pending-work
  - Title: Get Pending Work
  - Description: Return the first incomplete outcome and open deliverables for a plan
  - Input: { "planId": string }
  - Output: Markdown with the active outcome, deliverables, and actions

- get-plan-details
  - Title: Get Plan Details
  - Description: Return the full plan with outcomes and deliverables
  - Input: { "planId": string }
  - Output: Markdown with plan summary, all outcomes, and nested deliverables/actions

## Quick check (manual start)

You can start the server to verify it launches (it will wait for an MCP client on stdio):

```bash
PLANTERIA_API_KEY=your_key npx -y @mirdor/planteria-mcp@latest
```

Then use your MCP client to invoke `list-plans`, and pass a returned `id` to `get-pending-work` or `get-plan-details`.

## Troubleshooting

- 401 Unauthorized: API key missing or invalid. Check `PLANTERIA_API_KEY`.
- 404 Plan not found: `planId` doesn’t exist for your account or is malformed.
- 400 Malformed plan id: `planId` is not a valid Planteria document id.
- Invalid JSON / network errors: Ensure a stable connection and retry.

## Security

- Treat your API key like a password; do not commit it to source control.
- Rotate from Planteria settings if a key may be exposed.

## License

MIT

## Links

- Repository: https://github.com/rigomart/planteria
- Issues: use the repository issue tracker for questions and problems.
npm package: @mireck/react-bootstrap-table2
Description: Rebuilt for react-bootstrap-table
Author: AllenFang
Latest version: 0.0.3

# react-bootstrap-table2

[![Build Status](https://travis-ci.org/react-bootstrap-table/react-bootstrap-table2.svg?branch=master)](https://travis-ci.org/react-bootstrap-table/react-bootstrap-table2)  
Rebuild of [react-bootstrap-table](https://github.com/AllenFang/react-bootstrap-table)

> Note that `react-bootstrap-table2`'s npm module name is [**`react-bootstrap-table-next`**](https://www.npmjs.com/package/react-bootstrap-table-next) due to the name being already taken.

`react-bootstrap-table2` separates some functionalities from its core modules to other modules as listed in the following:

- [`react-bootstrap-table-next`](https://www.npmjs.com/package/react-bootstrap-table-next)
- [`react-bootstrap-table2-filter`](https://www.npmjs.com/package/react-bootstrap-table2-filter)
- [`react-bootstrap-table2-editor`](https://www.npmjs.com/package/react-bootstrap-table2-editor)
- [`react-bootstrap-table2-paginator`](https://www.npmjs.com/package/react-bootstrap-table2-paginator)
- [`react-bootstrap-table2-overlay`](https://www.npmjs.com/package/react-bootstrap-table2-overlay)
- [`react-bootstrap-table2-toolkit`](https://www.npmjs.com/package/react-bootstrap-table2-toolkit)

Not only does this reduce the bundle size of your apps but also helps us have a cleaner design to avoid handling too much logic in the kernel module(SRP).

## Migration

If you are coming from the legacy [`react-bootstrap-table`](https://github.com/AllenFang/react-bootstrap-table/), please check out the [migration guide](./docs/migration.md).

## Usage

See [getting started](https://react-bootstrap-table.github.io/react-bootstrap-table2/docs/getting-started.html).

## Online Demo

See `react-bootstrap-table2` [storybook](https://react-bootstrap-table.github.io/react-bootstrap-table2/storybook/index.html).

## Development

Please check the [development guide](./docs/development.md).

## Running storybook example on your local machine

```sh
# Clone the repo
$ git clone https://github.com/react-bootstrap-table/react-bootstrap-table2.git

# change dir to the cloned repo
$ cd react-bootstrap-table2

# Install all dependencies with yarn
$ yarn install

# Start the stroybook server, then go to localhost:6006
$ yarn storybook

```

**Storybook examples: [`packages/react-bootstrap-table2-example/examples`](https://github.com/react-bootstrap-table/react-bootstrap-table2/tree/master/packages/react-bootstrap-table2-example/examples)**
npm package: @mirego/babel-preset-react-app
Description: Babel preset used by Create React App
Latest version: 0.1.0

# babel-preset-react-app

This package includes the Babel preset used by [Create React App](https://github.com/facebook/create-react-app).<br>
Please refer to its documentation:

* [Getting Started](https://github.com/facebook/create-react-app/blob/master/README.md#getting-started) – How to create a new app.
* [User Guide](https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/README.md) – How to develop apps bootstrapped with Create React App.

## Usage in Create React App Projects

The easiest way to use this configuration is with [Create React App](https://github.com/facebook/create-react-app), which includes it by default. **You don’t need to install it separately in Create React App projects.**

## Usage Outside of Create React App

If you want to use this Babel preset in a project not built with Create React App, you can install it with following steps.

First, [install Babel](https://babeljs.io/docs/setup/).

Then install babel-preset-react-app.

```sh
npm install babel-preset-react-app --save-dev
```

Then create a file named `.babelrc` with following contents in the root folder of your project:

```js
{
  "presets": ["react-app"]
}
```

This preset uses the `useBuiltIns` option with [transform-object-rest-spread](http://babeljs.io/docs/plugins/transform-object-rest-spread/) and [transform-react-jsx](http://babeljs.io/docs/plugins/transform-react-jsx/), which assumes that `Object.assign` is available or polyfilled.

## Usage with TypeScript

To use this package with [`@babel/preset-typescript`](https://www.npmjs.com/package/@babel/preset-typescript), you need to disable `@babel/preset-flow` first.

You can achieve this by doing:

```
{
  "presets": [
    ["react-app", {
        "flow": false
    }],
    "@babel/typescript"
  ]
}
```