open-index/open-npm huggingface dataset:
npm package: @swapnity/v3-sdk
Description: ⚒️ An SDK for building applications on top of Uniswap V3
Latest version: 3.10.0

# Alpha software

The latest version of the SDK is used in production in the Uniswap 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!

# Uniswap V3 SDK

[![Unit Tests](https://github.com/Uniswap/uniswap-v3-sdk/workflows/Unit%20Tests/badge.svg)](https://github.com/Uniswap/uniswap-v3-sdk/actions?query=workflow%3A%22Unit+Tests%22)
[![Lint](https://github.com/Uniswap/uniswap-v3-sdk/workflows/Lint/badge.svg)](https://github.com/Uniswap/uniswap-v3-sdk/actions?query=workflow%3ALint)
[![npm version](https://img.shields.io/npm/v/@uniswap/v3-sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/v3-sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/v3-sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/v3-sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://docs.uniswap.org/).
npm package: @swappackage/uikit
Description: 0.0.8 konamon, 1.0.0 champage 
Latest version: 1.0.3

# 🥞 Pancake UIkit

[![Version](https://img.shields.io/npm/v/@pancakeswap-libs/uikit)](https://www.npmjs.com/package/@pancakeswap-libs/uikit) [![Size](https://img.shields.io/bundlephobia/min/@pancakeswap-libs/uikit)](https://www.npmjs.com/package/@pancakeswap-libs/uikit)

Pancake UIkit is a set of React components and hooks used to build pages on Pancake's apps. It also contains a theme file for dark and light mode.

## Install

`yarn add @pancakeswap-libs/uikit`

## Setup

### Theme

Before using Pancake UIkit, you need to provide the theme file to styled-component.

```
import { ThemeProvider } from 'styled-components'
import { light, dark } from '@pancakeswap-libs/uikit'
...
<ThemeProvider theme={isDark}>...</ThemeProvider>
```

### Reset

A reset CSS is available as a global styled component.

```
import { ResetCSS } from '@pancakeswap-libs/uikit'
...
<ResetCSS />
```

### Types

This project is built with Typescript and export all the relevant types.

## How to use the UIkit

If you want to use components from the UIkit, check the [Storybook documentation](https://pancakeswap.github.io/pancake-uikit/)
npm package: @swapper-finance/sdk
Description: JavaScript SDK form Swapper
Author: Swapper
Latest version: 0.0.2

<a name="readme-top"></a>

<!-- PROJECT LOGO -->
<br />
<div align="center">

  <h1 align="center">Swapper SDK</h1>

  <p align="center">
    Swapper SDK exposes a variety of models and tools for other projects to use.
    <br />
    <a href="https://docs.swapper.finance/swapper/introduction/what-is-swapper"><strong>Explore the docs »</strong></a>
    <br />
  </p>
</div>

<!-- TABLE OF CONTENTS -->
<details>
  <summary>Table of Contents</summary>
  <ol>
    <li>
      <a href="#about-the-project">About The Project</a>
    </li>
    <li>
      <a href="#getting-started">Getting Started</a>
      <ul>
        <li><a href="#prerequisites">Prerequisites</a></li>
        <li><a href="#installation">Installation</a></li>
      </ul>
    </li>
    <li><a href="#usage">Usage</a></li>
  </ol>
</details>

<!-- ABOUT THE PROJECT -->

## About The Project

Swapper SDK exposes a functions to access the advanced swap solution offered by Swapper.

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- GETTING STARTED -->

## Getting Started

To get the library follow these simple example steps.

### Prerequisites

- npm / pnpm `npm i pnpm@latest -g`

### Installation

Below you will find a step-by-step installation guide.

1. Install the library in your project
   ```sh
   npm/pnpm i @swapper-finance/sdk
   ```

<p align="right">(<a href="#readme-top">back to top</a>)</p>

<!-- USAGE EXAMPLES -->

## Usage

Todo

<p align="right">(<a href="#readme-top">back to top</a>)</p>

## Contribution

A detailed instruction on how to contribute

### Prerequisites

- pnpm
  ```sh
  npm i pnpm@latest -g
  ```

#### 1. Get the project and install dependencies

```sh
git clone git@github.com:swapper-finance/swapper-sdk.git

cd swapper-sdk

pnpm i
```

#### 2. Create new branch based on the `develop` one

```sh
git checkout develop
git checkout -b feature/<your_feature_name>
```

#### 3. Create changeset

`pnpm changeset` and follow instructions to describe your changes

#### 4. Commit changes

including changeset: `git commit -m "feat: <your desc>>"`

#### 5. Create PR to `develop` branch

<p align="right">(<a href="#readme-top">back to top</a>)</p>
npm package: @swapperchan/sdk
Description: 🛠 An SDK for building applications on top of SwapperChan.
Latest version: 0.0.13

# SwapperChan SDK

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

This modifies uniswap-sdk's UniswapV2Factory address. The new address for sushiswap is  `0x3d97964506800d433fb5DbEBDd0c202EC9B62557`.

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/swapperchan/swapperchan-sdk.git
```

Move into the swapperchan-sdk working directory

```sh
cd swapperchan-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @swappery/eslint-config-swappery
Description: Eslint config for Swappery
Author: ryo.kanazawa34
Latest version: 1.3.0

# eslint-config-swappery

Swappery Eslint config with:

- Airbnb config
- Typescript
- Prettier

## Usage

```
npx install-peerdeps --dev @swappery/eslint-config-swappery
```

Add `"extends": "@swappery/eslint-config-swappery"` to your eslint config file.
npm package: @swappery/sdk
Description: 🛠 An SDK for building applications on top of Swappery.
Latest version: 2.5.4

# Swappery SDK

Forked from the [Uniswap SDK](https://github.com/Uniswap/uniswap-v2-sdk/commit/a88048e9c4198a5bdaea00883ca00c8c8e582605).

You can refer to the Uniswap SDK documentation [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/swappery/swappery-sdk.git
```

Move into the swappery-sdk working directory

```sh
cd swappery-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @swappery/token-lists
Description: This repo contains main PancakeSwap token list and tools to validate it.
Latest version: 2.28.0

# PancakeSwap Token Lists

This repo contains main PancakeSwap token list and tools to validate it.

## How to add external lists

URLs to external lists are stored in `token-lists.json`, if you want your list to be available on upcoming list UI page - submit a PR modifying `token-lists.json`.

## How to add new lists within this repository

- Add an array of tokens under `src/tokens`
- Add `checksum:newlistname`, `generate:newlistname`, `makelist:newlistname` command to `package.json` analogous to PancakeSwap default and extended list scripts.
- Modify `checksum.ts`, `buildList.ts`, `ci-check.ts`, and `default.test.ts` to handle new list

## How to add new tokens to PancakeSwap (extended) token list

Note - this is not something we expect pull requests for.  
Unless you've been specifically asked by someone from PCS team please do no submit PRs to be listed on default PCS list. You can still trade your tokens on PCS exchange by pasting your address into the token field.

- Add new tokens to `src/tokens/pancakeswap-extended.json` file
- Run `yarn makelist:pcs-extended`
  - By default new list will have patch version number bumped by 1 (e.g. `2.0.1` -> `2.0.2`).
  - If you want to bump minor version add `minor` after makelist command `yarn makelist:pcs-extended minor`
  - If you want to bump major version add `major` after makelist command `yarn makelist:pcs-extended major`
- If tests pass - new token list will be created under `lists` directory

For list to be considered valid it need to satisfy the following criteria:

- It passes [token list schema](https://github.com/Uniswap/token-lists/blob/master/src/tokenlist.schema.json) validation (schema is [slightly modified](src/schema.ts))
- There are no duplicate addresses, symbols or token names in the list
- All addresses are valid and checksummed (`yarn checksum:pcs` automatically converts addresses to checksummed versions, it is also part of `yarn makelist:pcs`)

## How to update Top100 Token list

Note - this is not something we expect pull requests for.

```shell script
# Fetch the Top100 Tokens on PancakeSwap v2, and update list.
$ yarn fetch:pcs-top-100

# Build token list (pancakeswap-top-100.json)
$ yarn makelist:pcs-top-100
```

## Deploying

Token lists will be auto-deployed via netlify when PR is merged to master. Be sure to build the list with `yarn makelist:list-name` before submitting/merging the PR since it doesn't make much sense building lists within Netlify (because most errors are related to wrong token information and should be fixed prior to landing into master)

Netlify simply takes the json files under `lists` directory and hosts them on `tokens.pancakeswap.finance/list-name.json`
npm package: @swappery/uikit
Description: First release
Latest version: 1.2.3

# ✋✋✋ Swappery UIkit ✋✋✋

[![Version](https://img.shields.io/npm/v/@swappery/uikit)](https://www.npmjs.com/package/@swappery/uikit) [![Size](https://img.shields.io/bundlephobia/min/@swappery/uikit)](https://www.npmjs.com/package/@swappery/uikit)

Swappery UIkit is a set of React components and hooks used to build pages on Swappery's apps. It also contains a theme file for dark and light mode.

## Installation

Use the package manager [npm](https://www.npmjs.com) or [yarn](https://yarnpkg.com) to install Swappery UIkit. 🎨

```bash
`npm install @swappery/uikit`
`yarn add @swappery/uikit`
```

**\*Note**: In case you want to use the older version of the Swappery UIkit, you should install @swappery-libs/uikit, instead, but we recommend using the latest version of the UIkit.\*

## Setup

### Theme

Before using Swappery UIkit, you need to provide the theme file to styled-component.

```

import { ThemeProvider } from 'styled-components'
import { light, dark } from '@swappery/uikit'
...
<ThemeProvider theme={isDark}>...</ThemeProvider>

```

### Reset

A reset CSS is available as a global styled component.

```

import { ResetCSS } from '@swappery/uikit'
...
<ResetCSS />

```

### Types

This project is built with Typescript and export all the relevant types.

## How to use the UIkit

If you want to use components from the UIkit, check the [Storybook documentation](https://swappery.github.io/swappery-uikit/)

```

```
npm package: @swappityswap-dev/sdk
Description: 🛠 An SDK for building applications on top of SwappitySwap.
Author: swappityswap-dev
Latest version: 1.2.11

# Uniswap SDK

[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
[![Actions Status](https://github.com/Uniswap/uniswap-sdk/workflows/CI/badge.svg)](https://github.com/Uniswap/uniswap-sdk)
[![npm version](https://img.shields.io/npm/v/@uniswap/sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/Uniswap/uniswap-sdk.git
```

Move into the uniswap-sdk working directory

```sh
cd uniswap-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @swappityswap-dev/sdk-core
Description: ⚒️ An SDK for building applications on top of Swappity Swap
Latest version: 1.0.4

# Uniswap SDK Core

[![Unit Tests](https://github.com/Uniswap/uniswap-sdk-core/workflows/Unit%20Tests/badge.svg)](https://github.com/Uniswap/uniswap-sdk-core/actions?query=workflow%3A%22Unit+Tests%22)
[![Lint](https://github.com/Uniswap/uniswap-sdk-core/workflows/Lint/badge.svg)](https://github.com/Uniswap/uniswap-sdk-core/actions?query=workflow%3ALint)
[![npm version](https://img.shields.io/npm/v/@uniswap/sdk-core/latest.svg)](https://www.npmjs.com/package/@uniswap/sdk-core/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/sdk-core/latest.svg)](https://bundlephobia.com/result?p=@uniswap/sdk-core@latest)

This code is shared across Uniswap TypeScript SDKs.
npm package: @swaps-io/intent-sdk
Description: Swaps.io - Intent SDK
Author: Swaps.io Team
Latest version: 0.0.9

# Swaps.io Intents SDK

[![npm version](https://badgen.net/npm/v/intents-sdk)](https://npm.im/intents-sdk) [![npm downloads](https://badgen.net/npm/dm/intents-sdk)](https://npm.im/intents-sdk)

## Using this SDK

- TODO


Features:

- Package manager [pnpm](https://pnpm.js.org/), safe and fast
- Release with [semantic-release](https://npm.im/semantic-release)
- Bundle with [tsup](https://github.com/egoist/tsup)
- Test with [vitest](https://vitest.dev)

To skip CI (GitHub action), add `skip-ci` to commit message. To skip release, add `skip-release` to commit message.

## Install

```bash
npm i intents-sdk
```

## License

MIT
npm package: @swapsicledex/swapsicle-ethers-multicall
Description: Make multiple Ethereum network requests in a single HTTP query. ethcall for ethers v5.
Author: Cavan Flynn
Latest version: 0.2.6

# ethers-multicall

Make multiple Ethereum network requests in a single HTTP query. [ethcall](https://github.com/Destiner/ethcall) for ethers v5.

## API

* `Contract(address, abi)`: Create contract instance; calling `contract.callFuncName` will yield a `call` object
* `all(calls)`: Execute all calls in a single request
* `calls`: List of helper call methods
* `getEthBalance(address)`: Returns account ether balance

## Example

```ts
import { Contract, Provider } from 'ethers-multicall';
import { ethers } from 'ethers';

import erc20Abi from './abi/erc20.json';

const infuraKey = 'INSERT_YOUR_KEY_HERE';
const provider = new ethers.providers.InfuraProvider('mainnet', infuraKey);

const daiAddress = '0x6b175474e89094c44da98b954eedeac495271d0f';

async function call() {
  const ethcallProvider = new Provider(provider);

  await ethcallProvider.init(); // Only required when `chainId` is not provided in the `Provider` constructor

  const daiContract = new Contract(daiAddress, erc20Abi);

  const uniswapDaiPool = '0x2a1530c4c41db0b0b2bb646cb5eb1a67b7158667';

  const ethBalanceCall = ethcallProvider.getEthBalance(uniswapDaiPool);
  const daiBalanceCall = daiContract.balanceOf(uniswapDaiPool);

  const [ethBalance, daiBalance] = await ethcallProvider.all([ethBalanceCall, daiBalanceCall]);

  console.log('ETH Balance:', ethBalance.toString());
  console.log('DAI Balance:', daiBalance.toString());
}

call();
```
npm package: @swapsicledex/swapsicle-sdk
Description: This NPM module and GitHub repo contains the swapsicle SDK used by the <https://www.swapsicle.io/>
Author: Swapsicle
Latest version: 2.2.4

# @swapsicledex/swapsicle-sdk

This NPM module and GitHub repo contains the swapsicle SDK used by the <https://www.swapsicle.io/> 

## Publish on NPM

Remember to update the version in the package.json file before publishing to NPM. Then run:

```
npm login
npm publish
```
npm package: @swapverse/crypto-address-validator
Description: Comprehensive cryptocurrency address validation library with support for multiple networks
Latest version: 0.1.3

# Crypto Address Validator

A lightweight and comprehensive JavaScript/TypeScript library for validating cryptocurrency addresses with checksum verification.

## Features

- ✅ Validates format and checksum for cryptocurrency addresses
- 🚀 Zero dependencies (pure JavaScript implementation)
- 📦 ESM module support
- 💪 TypeScript support with full type definitions
- 🔄 Mainnet and testnet detection

## Supported Networks

- **Bitcoin (BTC)** - Legacy, P2SH, SegWit, Taproot
- **Ethereum (ETH)** - EIP-55 checksum validation (EVM compatible)
- **Polygon (POLYGON, MATIC, POL)** - EVM compatible
- **Solana (SOL)** - Ed25519 public key validation
- **Tron (TRX)** - Base58Check addresses
- **Ripple (XRP)** - Custom Base58 alphabet
- **Bitcoin Cash (BCH)** - CashAddr and Legacy
- **Litecoin (LTC)** - Legacy and SegWit
- **Liquid Network (LBTC, LIQUID)** - Sidechain with Confidential Transactions
- **Cardano (ADA)** - Shelley and Byron
- **Dogecoin (DOGE)** - Standard addresses
- **Polkadot (DOT)** - SS58 format

## Installation

```bash
npm install @swapverse/crypto-address-validator
```

## Usage

```javascript
import { validate } from '@swapverse/crypto-address-validator';

// Bitcoin
const btc = validate('1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa', 'BTC');
console.log(btc);
// Output: { isValid: true, network: 'mainnet', network_name: 'Bitcoin Mainnet' }

// Ethereum
const eth = validate('0x742d35Cc6634C0532925a3b844Bc454e4438f44e', 'ETH');
console.log(eth);
// Output: { isValid: true, network: 'mainnet', network_name: 'Ethereum Mainnet' }

// Solana
const sol = validate('4Nd1mBQtrMJVYVfKf2PJy9NZUZdTAsp7D4xWLs4gDB4T', 'SOL');
console.log(sol);
// Output: { isValid: true, network: 'mainnet', network_name: 'Solana Mainnet' }

// Liquid Network
const lbtc = validate('H8JgLKDq5KHdKzFbHzfYAy5YrZvF3LZXE9', 'LBTC');
console.log(lbtc);
// Output: { isValid: true, network: 'mainnet', network_name: 'Liquid Network Mainnet' }

// Invalid address
const invalid = validate('invalid-address', 'BTC');
console.log(invalid);
// Output: { isValid: false, network: null, network_name: null }
```

## API

### `validate(address: string, network: string): ValidationResult`

Validates a cryptocurrency address for a specific network.

**Parameters:**

- `address` - The address to validate
- `network` - Network identifier (e.g., 'BTC', 'ETH', 'SOL', 'POLYGON')

**Returns:**

```typescript
{
    isValid: boolean;
    network: 'mainnet' | 'testnet' | null;
    network_name: string | null;
}
```

### `getSupportedNetworks(): string[]`

Returns an array of all supported network identifiers.

```javascript
import { getSupportedNetworks } from '@swapverse/crypto-address-validator';

const networks = getSupportedNetworks();
console.log(networks);
// Output: ['BTC', 'BITCOIN', 'ETH', 'ETHEREUM', 'POLYGON', 'MATIC', 'SOL', ...]
```

## License

MIT License - feel free to use in your projects!

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.
npm package: @swapx-lib/sdk-core
Description: ⚒️ An SDK for building applications on top of SwapX V3
Latest version: 3.0.0

# Uniswap SDK Core

[![npm version](https://img.shields.io/npm/v/@uniswap/sdk-core/latest.svg)](https://www.npmjs.com/package/@uniswap/sdk-core/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/sdk-core/latest.svg)](https://bundlephobia.com/result?p=@uniswap/sdk-core@latest)

This code is shared across Uniswap TypeScript SDKs.
npm package: @swapx-lib/v2-sdk
Description: 🛠 An SDK for building applications on top of SwapX V2
Latest version: 3.0.0

# Uniswap V2 SDK

[![npm version](https://img.shields.io/npm/v/@uniswap/v2-sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/v2-sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/v2-sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/v2-sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).
npm package: @swapx-lib/v3-sdk
Description: ⚒️ An SDK for building applications on top of SwapX V3
Latest version: 3.0.0

# Alpha software

The latest version of the SDK is used in production in the Uniswap 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!

# Uniswap V3 SDK

[![npm version](https://img.shields.io/npm/v/@uniswap/v3-sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/v3-sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/v3-sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/v3-sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://docs.uniswap.org/).
npm package: @swapx/sdk
Description: SwapX SDK
Latest version: 3.0.8

# SwapX SDK


## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/SwapX-Team/swapx-sdk.git
```

Move into the swapx-sdk working directory

```sh
cd swapx-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```
npm package: @swapxco/sdk
Description: 🛠 An SDK for building applications on top of Swapx.
Latest version: 2.3.28

# SwapX SDK

Forked from the [Pancakeswap SDK](https://github.com/pancakeswap/pancake-swap-sdk) which was forked from [Uniswap SDK](https://github.com/Uniswap/uniswap-v2-sdk/commit/a88048e9c4198a5bdaea00883ca00c8c8e582605).

You can refer to the Uniswap SDK documentation [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/swapxco/swapx-sdk.git
```

Move into the swapx-sdk working directory

```sh
cd swapx-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @swapxco/uikit
Description: Set of UI components for swapx projects
Latest version: 0.43.6

# 🥞 Swapx UIkit

[![Version](https://img.shields.io/npm/v/@swapx-libs/uikit)](https://www.npmjs.com/package/@swapx-libs/uikit) [![Size](https://img.shields.io/bundlephobia/min/@swapx-libs/uikit)](https://www.npmjs.com/package/@swapx-libs/uikit)

Swapx UIkit is a set of React components and hooks used to build pages on Swapx's apps. It also contains a theme file for dark and light mode.

## Install

`yarn add @swapx-libs/uikit`

## Setup

### Theme

Before using Swapx UIkit, you need to provide the theme file to styled-component.

```
import { ThemeProvider } from 'styled-components'
import { light, dark } from '@swapx-libs/uikit'
...
<ThemeProvider theme={isDark}>...</ThemeProvider>
```

### Reset

A reset CSS is available as a global styled component.

```
import { ResetCSS } from '@swapx-libs/uikit'
...
<ResetCSS />
```

### Types

This project is built with Typescript and export all the relevant types.

## How to use the UIkit

If you want to use components from the UIkit, check the [Storybook documentation](https://swapx.github.io/pancake-uikit/)
npm package: @swapy.io/swapy-button
Description: Button component for React js created by Swapy team
Latest version: 1.0.2

# @swapy.io/swapy-button

> Button component for React js created by Swapy team

[![NPM](https://img.shields.io/npm/v/@swapy.io/swapy-button.svg)](https://www.npmjs.com/package/@swapy.io/swapy-button) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @swapy.io/swapy-button
```

## Usage

```jsx
import React, { Component } from 'react'

import { SwapyButton } from '@swapy.io/swapy-button'
import '@swapy.io/swapy-button/dist/index.css'

class Example extends Component {
  render() {
    return (
      <SwapyButton variant='capsule_outlined' height='50px' width='300px'>
        Ajay
      </SwapyButton>
    )
  }
}
```

## License

MIT © [](https://github.com/)
npm package: @swapy.io/swapy-textfield
Description: Text field component for React js created by Swapy team
Latest version: 1.0.4

# @swapy.io/swapy-textfield

> Text field component for React js created by Swapy team

[![NPM](https://img.shields.io/npm/v/@swapy.io/swapy-textfield.svg)](https://www.npmjs.com/package/@swapy.io/swapy-textfield) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @swapy.io/swapy-textfield
```

## Usage

```jsx
import React, { Component } from 'react'

import { SwapyTextField } from '@swapy.io/swapy-textfield'
import '@swapy.io/swapy-textfield/dist/index.css'
import email from './email.svg'

class Example extends Component {
  render() {
    return (
      <SwapyTextField
        placeholder='Enter a first name'
        id='firstname'
        onChange={(e) => console.log(e)}
        rightIcon={
          <img
            src={email}
            style={{ height: 24, width: 24, marginRight: 12 }}
            alt=''
          />
        }
      />
    )
  }
}
```

## License

MIT © [](https://github.com/)
npm package: @swaraj0_0/add-event-listener-hook
Description: Will be able to add event listeners and will be able to intercept the event
Author: @SwarajGK
Latest version: 1.0.0

# @swaraj0_0/add-event-listener-hook

> Will be able to add event listeners and will be able to intercept the event

[![NPM](https://img.shields.io/npm/v/@swaraj0_0/add-event-listener-hook.svg)](https://www.npmjs.com/package/@swaraj0_0/add-event-listener-hook) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @swaraj0_0/add-event-listener-hook
```

## Usage

```jsx
import React, { Component } from 'react'

import { useAddEventListeners } from '@swaraj0_0/add-event-listener-hook'

const Example = () => {
  const userName = 'SwarajGK';
  const { loading, userData } = useAddEventListeners(userName)
  return (
    <div></div>
  )
}
```

## License

MIT © [@SwarajGK](https://github.com/@SwarajGK)

---

This hook is created using [create-react-hook](https://github.com/hermanya/create-react-hook).
npm package: @swaraj_mohanty/readme-gen
Description: A CLI tool to generate README.md files interactively from the terminal
Author: Your Name
Latest version: 1.0.2

# @swaraj_mohanty/readme-gen

> A CLI tool to generate beautiful README.md files interactively from the terminal.

![Language](https://img.shields.io/badge/language-JavaScript-blue)
![npm](https://img.shields.io/npm/v/@swaraj_mohanty/readme-gen)
![License](https://img.shields.io/badge/license-MIT-green)

## Installation

Install globally via npm:
```bash
npm install -g @swaraj_mohanty/readme-gen
```

## Usage

Navigate to any project folder and run:
```bash
readme-gen
```

It will ask you a few questions and generate a `README.md` automatically.

## Options

| Flag | Description |
|------|-------------|
| `-o, --output <path>` | Output file path (default: `README.md`) |
| `-f, --force` | Overwrite an existing README.md |
| `--preview` | Print to terminal without writing a file |

## Examples
```bash
# Generate README.md interactively
readme-gen

# Preview without writing any file
readme-gen --preview

# Force overwrite existing README
readme-gen --force

# Write to a custom path
readme-gen --output docs/README.md
```

## What it asks

1. **Project name** — defaults to your current folder name
2. **Short description** — used as the tagline
3. **Package manager** — npm / yarn / pnpm / bun
4. **Install command** — pre-filled based on package manager
5. **Run/usage command** — e.g. `npm start`
6. **Usage description** — optional paragraph
7. **Language** — used to generate a badge
8. **GitHub repo URL** — optional, used for license badge

## Requirements

- Node.js 18+

## Author

**Swaraj Mohanty**

## License

MIT
npm package: @swarakaka/inertia-api-core
Description: A framework for creating server-driven single page apps.
Latest version: 0.7.1

# Inertia.js

Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.

Visit [inertiajs.com](https://inertiajs.com/) to learn more.
npm package: @swarfte/extended-type
Description: Expand Typescript native data types
Author: swarfte
Latest version: 1.0.0

# ExtendedType

Expand Typescript native data types

# Number System

all class from the Numbers is extended Number

```
import { Numbers } from "extended-type"

```

## Example

```
const a = new Numbers.NonNegativeInteger(30);
// get the value is the same method as Number
const value = a.valueOf();
console.log(value) // 30
```

## Number System option

```
{
  Integer,
  Float,
  PositiveNumber,
  NegativeNumber,
  PositiveInteger,
  NegativeInteger,
  PositiveFloat,
  NegativeFloat,
  Zero,
  NonZero,
  NonPositive,
  NonNegative,
  NonZeroInteger,
  NonPositiveInteger,
  NonNegativeInteger,
  NonZeroFloat,
  NonPositiveFloat,
  NonNegativeFloat,
  RangeNumber,
  RangeInteger,
  RangeFloat
}
```
npm package: @swarm-host/cli
Description: CLI for Swarm-Host
Author: onechiporenko
Latest version: 5.5.0

# Swarm-Host-CLI

[![npm version](https://badge.fury.io/js/@swarm-host%2Fcli.svg)](https://badge.fury.io/js/@swarm-host%2Fcli)
[![CI](https://github.com/onechiporenko/swarm-host-platform/actions/workflows/nodejs.yml/badge.svg)](https://github.com/onechiporenko/swarm-host-platform/actions/workflows/nodejs.yml)

## Install:

```bash
npm i -g @swarm-host/cli
```

## Usage:

### Create a new project (works in the empty dir):

```bash
swarm-host init
```

### Create a new Route:

```bash
swarm-host g route units
```

File `routes/units.ts` will be created. Its content:

```typescript
// routes/units.ts
import { Route } from '@swarm-host/server';

export default Route.createRoute('get', 'units', (req, res, next, lair) => {
  res.json({});
});
```

### Create a new Route with options:

```bash
swarm-host g route units/new --url=api/v1/units --method=post
```

File `routes/units/new.ts` will be created. Its content:

```typescript
// routes/units/new.ts
import { Route } from '@swarm-host/server';

export default Route.createRoute('post', 'api/v1/units', (req, res, next, lair) => {
  res.json({});
});
```

### Create a new Route with dynamic parts:

```bash
swarm-host g route units/unit/objectives/objective --url=units/:unit_id/objectives/:objective_id
```

File `routes/units/unit/objectives/objective.ts` will be created. Its content:

```typescript
//routes/units/unit/objectives/objective.ts
import { Route } from '@swarm-host/server';

export default Route.createRoute('get', '/units/:unit_id/objectives/:objective_id', ({params: {unit_id, objective_id}}, res, next, lair) => {
  res.json({});
});

```

### Create a new Factory:

```bash
swarm-host g factory my/unit
```

File `factories/my/unit.ts` will be created. Its content:

```typescript
// factories/my/unit.ts
import { Factory } from '@swarm-host/server';

export default class UnitFactory extends Factory {
  static factoryName = 'unit';
};
```

### Create a new Factory with attributes:

```bash
swarm-host g factory my/unit name:string squad:has-one:squad:units objectives:has-many:objective
```

File `factories/my/unit.ts` will be created. Its content:

```typescript
// factories/my/unit.ts
import { Factory, field, hasOne, hasMany } from '@swarm-host/server';

export default class UnitFactory extends Factory {
  static factoryName = 'unit';

  @field()
  get name() {
    return '';
  }

  @field()
  get age() {
    return 0;
  }
  
  @hasMany('objective', null) objectives;
  @hasOne('squad', 'units') squad;
}
```

### Destroy existing Factory

```bash
swarm-host d factory units
```

File `factories/units.ts` will be deleted.

### Destroy existing Route

```bash
swarm-host d route units
```

File `routes/units.ts` will be deleted.