open-index/open-npm huggingface dataset:
npm package: @morani/zt-comp
Description: React Components using storybook
Author: Morani
Latest version: 0.1.43

# React Components

Дизайн-система, построенная на базе библиотеки [React](https://reactjs.org/).

Содержание
- [Инициализация](#инициализация)
- [Доступные команды](#доступные-команды)

## Инициализация

Для инициализация проекта необходимо выполнить следующую команду

```bash
> npm i
```

## Доступные команды

Запускает приложение в режиме разработки.\
Запустите [http://localhost:3000](http://localhost:3000) для просмотра в браузере.

```bash
> npm start
```
\
Запускает все тесты, которые находятся в директории `src`

```bash
> npm test
```
\
Запускает билд компонентов в отдельную папку `lib` (запускает все команды с префиксом **build:**)

```bash
> npm run build
```
\
Удаляет папку `lib`

```bash
> npm run prebuild
```
\
Билд компонентов в ES-модули в папку `lib/esm`
```bash
> npm run build:esm
```
\
Билд компонентов в CommonJS-модули в папку `lib/cjs`
```bash
> npm run build:cjs
```
\
Билд типизации TS в папку `lib/types`
```bash
> npm run build:types
```
\
Билд scss в css во всех компонентах в папки `lib/esm` и `lib/cjs`
```bash
> npm run build:css
```
\
Запускает линтер. Настройки в файле `.eslintrc`

```bash
> npm run lint
```
\
Запускает `eslint` и `prettier` для форматирования кода

```bash
> npm run lint:fix
```
\
Запускает `storybook` по адресу [http://localhost:6006](http://localhost:6006)

```bash
> npm run storybook
```
\
Запускает билд `storybook` в папку `storybook-static`

```bash
> npm run build-storybook
```
\
Запускает билд для формирования пака из компонентов. Готово для публикации

```bash
> npm run compile
```
\
Преобразует SVG-файлы в TSX в папке `src/components/Icons`:

```bash
npm run transform:icons
```

Добавить иконку в package:
1. Поместить в папку `src/components/Icons` файл SVG;
2. Вызвать `npm run transform:icons`;
3. Добавить import и export результирующего файла в `src/components/Icons/index.ts`
4. Для использования import указываем из корневой директории `../`, вместо импорта из `../Icons`

Файл генерируется в стиле **kebab**. `test_name-25.svg` -> `TestName25.tsx`

Пример, находясь в `src/components/Button/Button.tsx`: 
```jsx
import {Loading} from '../'
```
Из библиотеки:
```tsx
import {FC} from 'react'
import {AddUser24, Icon} from 'react-components'

const TestPage: FC = () => {
  return <Icon As={AddUser24} color="green-1" />
}
```
npm package: @morario/eslint-config
Description: Unified ESLint ruleset for consistent code quality across all Morario projects.
Author: Morario
Latest version: 0.1.0

# Morario ESLint Config

Unified ESLint ruleset for consistent code quality across all Morario projects.

## Table of contents

- [Morario ESLint Config](#morario-eslint-config)
    - [Table of contents](#table-of-contents)
    - [1 Introduction](#1-introduction)
        - [1.1 What this repo provides](#11-what-this-repo-provides)
    - [2 Installation](#2-installation)

## 1 Introduction

### 1.1 What this repo provides

- **ESLint config** for TypeScript/JavaScript (`config/base.config.mjs`)
- **ESLint config** for React + JSX/TSX (`config/react.config.mjs`)
- **Import sorting** via `eslint-plugin-simple-import-sort`
- **Prettier config** for formatting + `prettier-plugin-packagejson`
- **Setup files** for default settings (`files`)

## 2 Installation

1. **Install required packages:**

```bash
npm install -D eslint @eslint/js typescript-eslint prettier prettier-plugin-packagejson
```

1. **Install Morario ESLint Config:**

```bash
npm install -D @dev/eslint-config prettier
```

2. **Implement Morario ESLint Config:**

```js
// eslint.config.mjs
// Base + React (typical setup)
import baseConfig from '@dev/eslint-config/base';
import reactConfig from '@dev/eslint-config/react';

export default [...baseConfig, ...reactConfig];

// For non-React projects, you can use only:
// import baseConfig from "@dev/eslint-config/base";
// export default baseConfig;
```
npm package: @moraswap/permit2-sdk
Description: An sdk for interacting with permit2.
Latest version: 1.0.1

# permit2-sdk

## Local Development

### Checkout the repo
- `git clone --recurse-submodules https://github.com/moraswap/permit2-sdk.git`

### Install dependencies
- `yarn`

### Run Unit Tests
- `yarn test`

### Run Forge tests
- `yarn build`
- `yarn interop`
- `(cd permit2 && forge build)`
- `forge test`
npm package: @moraswap/redux-multicall
Description: A React + Redux lib for fetching and caching chain state via the MultiCall contract
Latest version: 1.3.3

# MultiCall

A React + Redux library for fetching, batching, and caching chain state via the MultiCall contract.

## Setup

`yarn add @moraswap/redux-multicall` or `npm install @moraswap/redux-multicall`

## Usage

The usage of this library is similar to [RTK Query](https://redux-toolkit.js.org/rtk-query/overview#create-an-api-slice).

```js
// Somewhere in your app
export const multicall = createMulticall({ reducerPath: 'multicall' })

// In your store's root reducer
export const rootReducer = combineReducers({
  // Other reducers
  [multicall.reducerPath]: multicall.reducer
})
```

To use the updater, you'll need an instance of the Moraswap Multicall2 contract:

```js
import { abi as MulticallABI } from '@moraswap/v3-core/artifacts/contracts/lens/MoraswapInterfaceMulticall.sol/MoraswapInterfaceMulticall.json'
import { Contract } from '@ethersproject/contracts'
import { MoraswapInterfaceMulticall } from './abi/types'

const multicall2Contract = new Contract(address, MulticallABI, provider) as MoraswapInterfaceMulticall
```

For a more detailed example, see basic example app in `./integration-tests`

## Alpha software

The latest version of the SDK is used in production in the Moraswap Interface,
but it is considered Alpha software and may contain bugs or change significantly between patch versions.
If you have questions about how to use the SDK, please reach out in the `#dev-chat` channel of the Discord.
Pull requests welcome!
npm package: @moraswap/router-sdk
Description: An sdk for routing swaps using Moraswap v2 and Moraswap v3.
Latest version: 1.4.7

# Alpha software

The latest version of the SDK is used in production in the Moraswap Interface,
but it is considered Alpha software and may contain bugs or change significantly between patch versions.
If you have questions about how to use the SDK, please reach out in the `#dev-chat` channel of the Discord.
Pull requests welcome!

# Moraswap Swap Router SDK

This SDK is meant to facilitate interactions with the contracts in [swap-router-contracts](https://github.com/moraswap/swap-router-contracts).
npm package: @moraswap/token-lists
Description: 📚 The Token Lists specification
Author: Mora
Latest version: 1.0.0

# @moraswap/token-lists (beta)

[![Tests](https://github.com/moraswap/token-lists/workflows/Tests/badge.svg)](https://github.com/moraswap/token-lists/actions?query=workflow%3ATests)
[![npm](https://img.shields.io/npm/v/@moraswap/token-lists)](https://unpkg.com/@moraswap/token-lists@latest/)

This package includes a JSON schema for token lists, and TypeScript utilities for working with token lists.

The JSON schema represents the technical specification for a token list which can be used in a dApp interface, such as the Moraswap Interface.

## What are token lists?

Moraswap Token Lists is a specification for lists of token metadata (e.g. address, decimals, ...) that can be used by any dApp interfaces that needs one or more lists of tokens.

Anyone can create and maintain a token list, as long as they follow the specification.

Specifically an instance of a token list is a [JSON](https://www.json.org/json-en.html) blob that contains a list of 
[ERC20](https://github.com/ethereum/eips/issues/20) token metadata for use in dApp user interfaces.
Token list JSON must validate against the [JSON schema](https://json-schema.org/) in order to be used in the Moraswap Interface.
Tokens on token lists, and token lists themselves, are tagged so that users can easily find tokens.

## JSON Schema $id

The JSON schema ID is [https://moraswap.com/tokenlist.schema.json](https://moraswap.com/tokenlist.schema.json)