open-index/open-npm huggingface dataset:
npm package: @solariera/create-dictionary
Description: Create dictionary from array of object
Author: Solariera
Latest version: 0.0.1

# Create Dictionary

Create dictionary from array of object

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/create-dictionary
```

```console
# yarn
yarn add @solariera/create-dictionary
```

### 1-2. Basic Usage

```typescript
import { createDictionary } from '@solariera/create-dictionary';

const stringKeyData = [
  { key: 'a', value: 'alfa' },
  { key: 'b', value: 'bravo' },
  { key: 'c', value: 'charlie' },
];

const keyDictionary = createDictionary('key', stringKeyData);
console.log(keyDictionary);
// {
//   a: { key: 'a', value: 'alfa' },
//   b: { key: 'b', value: 'bravo' },
//   c: { key: 'c', value: 'charlie' },
// }

const numberKeyData = [
  { page: 2, value: 'bravo' },
  { page: 3, value: 'charlie' },
  { page: 1, value: 'alfa' },
];

const pageDictionary = createDictionary('page', numberKeyData);
console.log(pageDictionary);
// {
//   1: { page: 1, value: 'alfa' },
//   2: { page: 2, value: 'bravo' },
//   3: { page: 3, value: 'charlie' },
// }
```

## 2. Specifications

### 2-1. Parameters

| No. | Name    | Type     | Description                    |
| --- | ------- | -------- | ------------------------------ |
| 1   | key     | string   | Key to specify for the index\* |
| 2   | entries | object[] | Source data for the dictionary |

\*The value of the specified key can be of type string or number
npm package: @solariera/easy-jest
Description: Easy jest package with convertString
Author: Solariera
Latest version: 0.0.10

# Easy Jest

Easy jest package

## 1. Usage

### 1-1. Installation

```console
# npm
npm install --save-dev @solariera/easy-jest
```

```console
# yarn
yarn add --dev @solariera/easy-jest
```

### 1-2. Basic Usage

```typescript
import { tests, TestData } from '@solariera/easy-jest';
import { testFunction as fn } from './';

const data: TestData<typeof fn>[] = [
  { id: 'undefined', params: [undefined], ret: 'undefined' },
  { id: 'null', params: [null], ret: 'null' },
  { id: 'boolean - true', params: [true], ret: 'true' },
  { id: 'boolean - false', params: [false], ret: 'false' },
  { id: 'string', params: ['hogehoge'], ret: 'hogehoge' },
  { id: 'number', params: [0], ret: '0' },
  { id: 'array', params: [[0, 1, 2]], ret: '[0,1,2]', mode: 'toEqual' },
  { id: 'object', params: [{ key: 'a01', value: 1 }], ret: '{"key":"a01","value":1}' },
];

tests(fn, data);
```

### 1-3. Result

```console
  ✓  1: undefined
test         : convertString
@params      : undefined
@params type : undefined
@return      : undefined
@return type : string

  ✓  2: null
test         : convertString
@params      : null
@params type : object
@return      : null
@return type : string
```

## 2. Specifications

### 2-1. Syntax

> tests(`fn` ,`data`)

### 2-2. Parameters

| No. | Name   | Type       | Description                   |
| --- | ------ | ---------- | ----------------------------- |
| 1   | `fn`   | Function   | The function you want to test |
| 2   | `data` | TestData[] | Test data array               |

### 2-3. TestData Properties

| Name   | Type             | Default | Description                  |
| ------ | ---------------- | ------- | ---------------------------- |
| id     | string           | ""      | Test ID/Name                 |
| params | Parameters\<fn\> | -       | Parameters of test function  |
| ret    | depend on mode\* | -       | ReturnValue of test function |
| mode   | Matchers\*       | `toBe`  | Compare method               |

\* see next section

### 2-4. Matchers

| Mode (Supported Methods)                                                        | Set for 'ret' type |
| ------------------------------------------------------------------------------- | ------------------ |
| `toBe` `not.toBe` `toEqual` `not.toEqual` `toStrictEqual` `not.toStrictEqual`   | ReturnType\<fn\>   |
| `toBeNull` `toBeUndefined` `toBeDefined` `toBeTruthy` `toBeFalsy`               | undefined          |
| `toBeGreaterThan` `toBeGreaterThanOrEqual` `toBeLessThan` `toBeLessThanOrEqual` | number \| bigint   |
| `toBeCloseTo`                                                                   | number             |
| `toMatch` `not.toMatch`                                                         | RegExp             |
| `toContain` `not.toContain`                                                     | unknown            |
npm package: @solariera/native-style
Description: Style functions for ReactNative
Author: Solariera
Latest version: 0.2.0

# Style Functions

[![npm](https://img.shields.io/npm/v/@solariera/native-style)](https://www.npmjs.com/package/@solariera/native-style)
[![npm](https://img.shields.io/npm/dw/@solariera/native-style)](https://www.npmjs.com/package/@solariera/native-style)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/native-style)](https://bundlephobia.com/result?p=@solariera/native-style)

Style functions for ReactNative

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/native-style
```

```console
# yarn
yarn add @solariera/native-style
```
npm package: @solariera/replace-token
Description: Replace the token in the text
Author: Solariera
Latest version: 0.0.3

# Replace Token

[![npm](https://img.shields.io/npm/v/@solariera/replace-token)](https://www.npmjs.com/package/@solariera/replace-token)
[![npm](https://img.shields.io/npm/dw/@solariera/replace-token)](https://www.npmjs.com/package/@solariera/replace-token)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/replace-token)](https://bundlephobia.com/result?p=@solariera/replace-token)

Replace the token in the text

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/replace-token
```

```console
# yarn
yarn add @solariera/replace-token
```

### 1-2. Basic Usage

```typescript
import { replaceToken } from '@solariera/replace-token';

/** B A S I C   R E P L A C E */
const original = 'I am a {person}';
const replacer = { person: 'pen' };
const replacerText = replaceToken(original, replacer);
console.log(replacerText); // I am a pen

/** R E C U R S I V E   R E P L A C E */
const original = 'I live in {address}';
const replacer = { address: { format: '{city}, {country}', replacer: { city: 'Tokyo', country: 'Japan' } } };
const replacerText = replaceToken(original, replacer);
console.log(replacerText); // I live in Tokyo, Japan
```

## 2. Specifications

### 2-1. Syntax & Parameters

#### replaceToken(`original` [, `replacer`])

| No. | Name       | Type   | Required | Description                       |
| --- | ---------- | ------ | :------: | --------------------------------- |
| 1   | `original` | string |   Yes    | The original text to be converted |
| 2   | `replacer` | object |          | Replacer object                   |

### 2-2. Replacer Object

#### { `key`: `value` }

| No. | Name    | Type                                   | Description                          |
| --- | ------- | -------------------------------------- | ------------------------------------ |
| 1   | `key`   | string                                 | Characters in the token (e.g. {key}) |
| 2   | `value` | string \| number \| Recursive Replacer | The string to be replaced            |

### 2-3. Recursive Replacer

#### { format: `original`, replacer: `replacer` }

```typescript
{
  greeting: {
    format: 'I am {first} {last}', replacer: { first: 'pika', last: 'chu' };
  }
}
```
npm package: @solariera/rgba-syntax
Description: Getting the RGBA syntax for CSS
Author: Solariera
Latest version: 0.0.1

# RGBA Syntax

Getting the RGBA syntax for CSS.

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/rgba-syntax
```

```console
# yarn
yarn add @solariera/rgba-syntax
```

### 1-2. Basic Usage

```typescript
import React from 'react';
import styled from 'styled-components';
import { rgba } from '@solariera/rgba-syntax';

export const ColorText: React.FC = () => {
  return <Color { code: '#393D47', alpha: 0.6 }>{'hello world'}</Color>;
};

const Color = styled.div`
  color: ${(props) => rgba(props.code, props.alpha)};
  ${/* rgba(57, 61, 71, 0.6) */}
`;
```

## 2. Specifications

### 2-1. Syntax

> rgba(`code` [, `alpha`])

### 2-2. Parameters

| No. | Name    | Type   | Description            |
| --- | ------- | ------ | ---------------------- |
| 1   | `code`  | string | Hexadecimal color code |
| 2   | `alpha` | number | Alpha channel value    |
npm package: @solariera/scramble-number
Description: Npm package template
Author: Solariera
Latest version: 0.0.2

# Scramble Number

[![npm](https://img.shields.io/npm/v/@solariera/scramble-number)](https://www.npmjs.com/package/@solariera/scramble-number)
[![npm](https://img.shields.io/npm/dw/@solariera/scramble-number)](https://www.npmjs.com/package/@solariera/scramble-number)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/scramble-number)](https://bundlephobia.com/result?p=@solariera/scramble-number)

This package generates a scrambled number.

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/scramble-number
```

```console
# yarn
yarn add @solariera/scramble-number
```

### 1-2. Basic Usage

```typescript
import { scramble, generateSalt } from '@solariera/scramble-number';

const [salt, _salt] = generateSalt();

const scrambled = [0, 1, 2, 3, 4].map((num) => scramble(num, salt, _salt));

console.log(scrambled);
// e.g. [1219901536, 239563430, 953425272, 1286381126, 1451104176]
```

## 2. Specifications

### 2-1. Syntax & Parameters

#### scramble(`value`, `salt`, `inversedSalt`)

| No. | Name           | Type   | Required | Description    |
| --- | -------------- | ------ | :------: | -------------- |
| 1   | `value`        | number |   Yes    | Original Value |
| 1   | `salt`         | number |   Yes    | Salt           |
| 2   | `inversedSalt` | number |   Yes    | Inversed Salt  |
npm package: @solariera/temperatures
Description: This is npm package template
Author: Solariera
Latest version: 0.0.3

# Temperature convert functions

## 1. Usage

### 1-1. Installation

```console
# npm
npm install --save-dev @solariera/temperatures
```

```console
# yarn
yarn add --dev @solariera/temperatures
```

### 1-2. Basic Usage

```typescript
import { kelvinToCelsius } from '@solariera/temperatures';

const celsius = kelvinToCelsius(0);
console.log(celsius); // -273.15
```

## 2. Specifications

### 2-1. Correspondence table

| input \ output  | Kelvin | Celsius | Fahrenheit | Rankine | Delisle | Newton | Reaumur | Roemer |
| --------------- | :----: | :-----: | :--------: | :-----: | :-----: | :----: | :-----: | :----: |
| Kelvin [K]      |   -    |   ✔️    |     ✔️     |   ✔️    |   ✔️    |   ✔️   |   ✔️    |   ✔️   |
| Celsius [°C]    |   ✔️   |    -    |     ✔️     |         |         |        |         |        |
| Fahrenheit [°F] |   ✔️   |   ✔️    |     -      |         |         |        |         |        |
| Rankine [°R]    |   ✔️   |         |            |    -    |         |        |         |        |
| Delisle [°De]   |   ✔️   |         |            |         |    -    |        |         |        |
| Newton [°N]     |   ✔️   |         |            |         |         |   -    |         |        |
| Reaumur [°Ré]   |   ✔️   |         |            |         |         |        |    -    |        |
| Roemer [°Rø]    |   ✔️   |         |            |         |         |        |         |   -    |
npm package: @solariera/text-replacer
Description: Replace Text to 
Author: Solariera
Latest version: 1.1.0

# Text Replacer

[![npm](https://img.shields.io/npm/v/@solariera/text-replacer)](https://www.npmjs.com/package/@solariera/text-replacer)
[![npm](https://img.shields.io/npm/dw/@solariera/text-replacer)](https://www.npmjs.com/package/@solariera/text-replacer)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/text-replacer)](https://bundlephobia.com/result?p=@solariera/text-replacer)

Replaces tokens in the text and converts them to data for color coordination.

![Result Preview](preview.png)

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/text-replacer
```

```console
# yarn
yarn add @solariera/text-replacer
```

### 1-2. Basic Usage

```typescript
import { textReplacer, ReplaceData } from '@solariera/text-replacer';

const sample: ReplaceData = {
  _format: 'I am {name}. I live in {address}.',
  _replacers: {
    name: { _text: 'Tom', _options: { color: '#0463ff' } },
    address: {
      _format: '{city}, {country}',
      _replacers: {
        city: { _text: 'N.Y.' },
        country: { _text: 'U.S.A', _options: { color: '#0463ff' } },
      },
      _options: { color: '#ff0463' },
    },
  },
};

function App() {
  const text = textReplacer(sample);
  // [
  //   { _options: undefined, _text: 'I am' },
  //   { _text: ' ', _options: undefined },
  //   { _options: { color: '#0463ff' }, _text: 'Tom' },
  //   { _text: '. ', _options: undefined },
  //   { _text: 'I live in ', _options: undefined },
  //   { _options: { color: '#ff0463' }, _text: 'N.Y.' },
  //   { _text: ', ', _options: { color: '#ff0463' } },
  //   { _options: { color: '#0463ff' }, _text: 'U.S.A' },
  //   { _text: '.', _options: undefined },
  // ];

  const colored = text.map((data, index) => {
    const { _text, _options } = data;
    if (_options)
      return (
        <span style={{ ..._options }} key={index}>
          {_text}
        </span>
      );
    return <span key={index}>{_text}</span>;
  });

  return (
    <div className="App">
      <span>{colored}</span>
    </div>
  );
}

export default App;
```

## 2. Specifications

### 2-1. Syntax & Parameters

#### textReplacer(`data`: ReplaceData): ConvertData[]

| No. | Name          | Contents                                                          |
| :-: | ------------- | ----------------------------------------------------------------- |
|  1  | `ReplaceData` | { \_format: string; \_replacers: Replacers; \_options?: unknown } |
|  2  | `Replacers`   | { [key in string]: ConvertData \| ReplaceData }                   |
|  3  | `ConvertData` | { \_text: string; \_options?: unknown }                           |
npm package: @solariera/use-memoized
Description: Memoize hook for object
Author: Solariera
Latest version: 0.0.4

# useMemoized / React hook

[![npm](https://img.shields.io/npm/v/@solariera/use-memoized)](https://www.npmjs.com/package/@solariera/use-memoized)
[![npm](https://img.shields.io/npm/dw/@solariera/use-memoized)](https://www.npmjs.com/package/@solariera/use-memoized)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/use-memoized)](https://bundlephobia.com/result?p=@solariera/use-memoized)

This is npm package template

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/use-memoized
```

```console
# yarn
yarn add @solariera/use-memoized
```

### 1-2. Basic Usage

```typescript
import { useObjectMemo, useMemoized } from '@solariera/use-memoized';

/** Same use as useMemo */
const frameProps: FrameProps = useObjectMemo(() => frameProps, []);

/** Simple usage when you know object type */
const buttonProps: FrameProps = useMemoized({ ...frameProps, onPress });
```
npm package: @solariera/weighted-mean
Description: The library calculates weighted mean.
Author: Solariera
Latest version: 1.0.1

# Weighted Mean

[![npm](https://img.shields.io/npm/v/@solariera/weighted-mean)](https://www.npmjs.com/package/@solariera/weighted-mean)
[![npm](https://img.shields.io/npm/dw/@solariera/weighted-mean)](https://www.npmjs.com/package/@solariera/weighted-mean)
[![npm bundle size](https://img.shields.io/bundlephobia/min/@solariera/weighted-mean)](https://bundlephobia.com/result?p=@solariera/weighted-mean)

The library calculates weighted mean.

## 1. Usage

### 1-1. Installation

```console
# npm
npm install @solariera/weighted-mean
```

```console
# yarn
yarn add @solariera/weighted-mean
```

### 1-2. Basic Usage

```typescript
import { weightedMean } from '@solariera/weighted-mean';

const answer = weightedMean(
  { value: 50, weight: 15 },
  { value: 76, weight: 20 },
  { value: 80, weight: 20 },
  { value: 98, weight: 45 },
);
// 82.8
```

## 2. Specifications

### 2-1. Syntax & Parameters

#### weightedMean(...data: WeightData[])

```typescript
type WeightData = { value: number; weight: number };
```
npm package: @solariss/react-on-show
Description: A react library for triggering events when components are shown
Author: SolariStudio
Latest version: 2.1.1

<a href="https://www.npmjs.com/package/@solariss/react-on-show"><img width="600" src="header.svg" /></a>

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
 [![npm version](https://badge.fury.io/js/%40solariss%2Freact-on-show.svg)](https://badge.fury.io/js/%40solariss%2Freact-on-show) ![Build](https://github.com/solaristudio/react-on-show/workflows/build/badge.svg?branch=main&event=push) [![stable](http://badges.github.io/stability-badges/dist/stable.svg)](http://github.com/badges/stability-badges)

>`A library for adding event handler when an element is shown in React`

> # Important Note
> Now the library has two versions: normal and minimal. For the standard version install `2.x.x` versioned packages. For the minimal version use `1.x.x` versioned packages. If you want to use the library just for basic onShow event(Like changing opacity when a div shows on the screen for the first time) use the minimal version since its size is very little compared to normal version.
> ## For minimal versions look at the [minimal branch](https://github.com/solaristudio/react-on-show/tree/minimal)

## `Install`
```bash
npm install @solariss/react-on-show@2
```

## `Usage`
There are two main way to use the library. You can use it either a function or a [Component](https://reactjs.org/docs/react-component.html).

### `Latest`
```js
import React, { useRef, useEffect } from 'react'
import { onShow, OnShow } from '@solariss/react-on-show'

// Function based
function MyComponent(props) {
    const ref = useRef(null)
    useEffect(() => {
        onShow(ref.current, {
            enter: () => {
                console.log('Event is triggered.')
            }
        })
    })
    return (
        <div ref={ref}>
            Hello World!
        </div>
    )
}

// Component Based
function MyComponent(props) {
    return (<OnShow handlers={{
        enter: () => {
            console.log('Event is triggered.')
        }
    }}>
        <div>
            Hello World!
        </div>
    </OnShow>)
}
```

## `Documentation`
A [Wiki](https://github.com/solaristudio/react-on-show/wiki) is dedicated for the project that contains a comprehensive and clear documentation. You can also read [Changelogs](https://github.com/solaristudio/react-on-show/blob/main/changelogs.md) for detailed version updated.

## `Contributing`
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change. Also you can help me to improve the library by adding new [issues](https://github.com/solaristudio/react-on-show/issues).
npm package: @solarity/hardhat-habits
Description: The tool to work with Ethereum ABI
Author: Distributed Lab
Latest version: 1.0.1

[![npm](https://img.shields.io/npm/v/@solarity/hardhat-habits.svg)](https://www.npmjs.com/package/@solarity/hardhat-habits) [![hardhat](https://hardhat.org/buidler-plugin-badge.svg?1)](https://hardhat.org)

# Hardhat Habits (hABIts)

The hardhat plugin with common ABI utilities.

## What

This plugin simplifies interation with ABI and enables the following use cases:

- **Interface ID Calculation**: Calculates the Interface ID for a specified smart contract using `hardhat` environment and `solidity-ast` package.

## Installation

```bash
npm install --save-dev @solarity/hardhat-habits
```

## Usage

To use the module, follow these steps:

1. **Import the Module**:

```typescript
import { getInterfaceID } from "@solarity/hardhat-habits";
```

2. **Call the Function**:

```typescript
const interfaceID = await getInterfaceID("YourContractName");
```

Replace `"YourContractName"` with the name of your contract.

> [!NOTE]
> If the contract name is ambiguous, the fully qualified name of the contract will have to be specified.

## Tasks

This plugin does not add tasks to the Hardhat Runtime Environment.

## Environment extensions

This plugin does not extend the Hardhat Runtime Environment.
npm package: @solarity/hardhat-smart-compare
Description: Compare contracts between upgrades to ensure compatibility.
Author: Distributed Lab
Latest version: 0.1.6

[//]: # ([![npm]&#40;https://img.shields.io/npm/v/@solarity/hardhat-smart-compare.svg&#41;]&#40;https://www.npmjs.com/package/@solarity/hardhat-smart-compare&#41; [![hardhat]&#40;https://hardhat.org/buidler-plugin-badge.svg?1&#41;]&#40;https://hardhat.org&#41;)

# Hardhat Smart Compare

[Hardhat](https://hardhat.org) plugin to compare contracts between upgrades to ensure storage compatibility. 

## What

This plugin generates a storage layout snapshot of the contracts in the project.
It is precious for upgradable systems, as it helps you verify that the storage layout of the proxy contracts 
remains unchanged after the upgrade is done.

## Installation

```bash
npm install --save-dev @solarity/hardhat-smart-compare
```

And add the following statement to your `hardhat.config.js`:

```js
require("@solarity/hardhat-smart-compare");
```

Or, if you are using TypeScript, add this to your `hardhat.config.ts`:

```ts
import "@solarity/hardhat-smart-compare";
```

## Tasks

There are two tasks:

* `storage:save` task, which allows you to save the snapshot of the storage layout.
* `storage:compare` task, which allows you to compare the current version of contracts with the previously saved snapshot.

To view the available options, run the command (help command):

```bash
npx hardhat help storage:save 
npx hardhat help storage:compare 
```

## Environment extensions

This plugin does not extend the environment.

## Usage

To make a snapshot of the storage layout, run the following command:

```bash
npx hardhat storage:save
```

To compare the current version of contracts with the previously saved snapshot, run the following command:

```bash
npx hardhat storage:compare
```

### How it works

The plugin completes the `compile` task, retrieves artifacts from the *Hardhat Runtime Environment (HRE)*, and performs the following actions depending on the task:

- `save`: 

It will parse the `build-info` file to get the compiler output and retrieve storage layout of contracts from the 
`outputSelection` field.
After that it will parse and save the storage layout for each contract with an inheritance "map" in a JSON file.

- `compare`:

Initially, it will execute the same steps as the `save` task. 
It will then thoroughly compare the existing snapshot and the newly generated version, scrutinizing each field and type. 
Ultimately, if the `--print-diff` flag is provided, it will display any differences that were identified.

### Configuration

The default configuration looks as follows. You may customize all fields in your **hardhat config** file.

```js
module.exports = {
  compare: {
    snapshotPath: "./storage_snapshots",
    snapshotFileName: "storage_snapshot.json",
  },
};
```

### Parameter explanation

* `snapshotPath`: Path to the directory where the storage layout snapshot is saved.
* `snapshotFileName`: File name of the snapshot.

## Known limitations

* Doesn't detect non-storage variables changes.
* Printed results are hard to comprehend.
* `Vyper` is currently not supported.
npm package: @solariusnl/mingyue-carousel
Description: Embla based carousel
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine carousel

Embla based carousel

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-core @solariusnl/mingyue-hooks @solariusnl/mingyue-carousel

# With npm
npm install @solariusnl/mingyue-core @solariusnl/mingyue-hooks @solariusnl/mingyue-carousel
```

## License

MIT
npm package: @solariusnl/mingyue-core
Description: React components library focused on usability, accessibility and developer experience
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine core

Mantine core components library.

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-core @solariusnl/mingyue-hooks

# With npm
npm install @solariusnl/mingyue-core @solariusnl/mingyue-hooks
```

## License

MIT
npm package: @solariusnl/mingyue-dropzone
Description: Dropzone component built with Mantine theme and components
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Dropzone

Capture files from user

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-dropzone @solariusnl/mingyue-core @solariusnl/mingyue-hooks

# With npm
npm install @solariusnl/mingyue-dropzone @solariusnl/mingyue-core @solariusnl/mingyue-hooks
```

## License

MIT
npm package: @solariusnl/mingyue-form
Description: Mantine form management library
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Form

Form management library

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-form

# With npm
npm install @solariusnl/mingyue-form
```

## License

MIT
npm package: @solariusnl/mingyue-hooks
Description: A set of react hooks for state and UI management
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Hooks

A set of react hooks for state and UI management

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks

# With npm
npm install @solariusnl/mingyue-hooks
```

## License

MIT
npm package: @solariusnl/mingyue-modals
Description: Modals manager based on Mantine components
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine modals manager

Manage modals state

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-modals

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-modals
```

## License

MIT
npm package: @solariusnl/mingyue-next
Description: Mantine integration for Next.js
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine integration for Next.js

Utilities to setup Mantine server side rendering with Next.js

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-next

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-next
```

## License

MIT
npm package: @solariusnl/mingyue-notifications
Description: Notification system based on Mantine components
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine notifications system

Notifications system

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-notifications

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-notifications
```

## License

MIT
npm package: @solariusnl/mingyue-nprogress
Description: Navigation progress bar
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Navigation Progress

A navigation progress bar

[Documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-nprogress @solariusnl/mingyue-core @solariusnl/mingyue-hooks

# With npm
npm install @solariusnl/mingyue-nprogress @solariusnl/mingyue-core @solariusnl/mingyue-hooks
```

## License

MIT
npm package: @solariusnl/mingyue-prism
Description: Code highlight with Mantine theme
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine prism code highlight

Code highlight built with prism and Mantine

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-prism

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-prism
```

## License

MIT
npm package: @solariusnl/mingyue-rte
Description: Rich text editor built with Mantine components
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine rich text editor

Quill based rich text editor

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-rte

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-rte
```

## License

MIT
npm package: @solariusnl/mingyue-spotlight
Description: Command center for your application
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Spotlight

Overlay command center for your application

[Documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-spotlight @solariusnl/mingyue-core @solariusnl/mingyue-hooks

# With npm
npm install @solariusnl/mingyue-spotlight @solariusnl/mingyue-core @solariusnl/mingyue-hooks
```

## License

MIT
npm package: @solariusnl/mingyue-ssr
Description: Mantine server side rendering utils
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine SSR

General purpose utilities for Mantine server side rendering

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-ssr

# With npm
npm install @solariusnl/mingyue-hooks @solariusnl/mingyue-core @solariusnl/mingyue-ssr
```

## License

MIT
npm package: @solariusnl/mingyue-styles
Description: Mantine css-in-js styles engine, based on emotion
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine styles

Mantine CSS-in-JS library built on top of emotion

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-styles

# With npm
npm install @solariusnl/mingyue-styles
```

## License

MIT
npm package: @solariusnl/mingyue-utils
Description: A set of utils used in Mantine packages
Author: Vitaly Rtishchev
Latest version: 1.0.1

# Mantine Hooks

A set of utils used in Mantine packages

[View documentation](https://mantine.dev/)

## Installation

```bash
# With yarn
yarn add @solariusnl/mingyue-utils

# With npm
npm install @solariusnl/mingyue-utils
```

## License

MIT