open-index/open-npm huggingface dataset:
npm package: @polybunny/ui
Description: Set of UI components
Latest version: 0.1.0

# 🥞 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: @polychainmonsters/nfbs
Description: NFBs are Non-Fungible Boosters aka "packs" that contain one or more other NFTs.
Author: onchainguy-eth
Latest version: 0.1.1

# What are NFBs?

NFBs are Non-Fungible Boosters, which are packs that contain one or more NFTs that are obtained when opened (also known as burned). This repository includes all the necessary materials for conducting an NFB drop.

## Contracts

The contracts in this repository draw inspiration from the requirements of the Polychain Monsters project, but they can be adapted to work for a range of other use cases as well.
npm package: @polychromatist/tree-sitter-luau
Description: Luau grammar for tree-sitter
Author: polychromatist
Latest version: 0.2.1

# tree-sitter-luau

These are the generated node and web bindings for tree-sitter-luau, my [tree-sitter](https://tree-sitter.github.io/) parser for the [Luau](https://luau.org/) scripting language.

## Usage

### node

```js
const Parser = require("tree-sitter");
const Luau = require("@polychromatist/tree-sitter-luau");

const parser = new Parser();
parser.setLanguage(Luau);

// const tree = parser.parse("print(`abc{string.char(100)}efg`)");
```

### WebAssembly

This package contains a `.wasm` module that can be used with the [WebAssembly bindings](https://github.com/tree-sitter/tree-sitter/tree/master/lib/binding_web).

## Note about Documentation

As of October 2024, [node-tree-sitter](https://github.com/tree-sitter/node-tree-sitter) is poorly documented. However, the [interface declaration](https://github.com/tree-sitter/node-tree-sitter/blob/master/tree-sitter.d.ts) and the [tests](https://github.com/tree-sitter/node-tree-sitter/tree/master/test) can be used as ad hoc references.
npm package: @polycity/core
Description: Core contracts for the PolyCityDex protocol
Latest version: 2.0.0-canary.4

# PolyCityDex

https://pichi.com/

## Deployed Contracts

https://dev.pichi.com/polycity/contracts

## Docs

[Development](docs/DEVELOPMENT.md)

[Deployment](docs/DEPLOYMENT.md)

[History](docs/HISTORY.md)

## Security

[Security Policy](SECURITY.md)

## License

[MIT](LICENSE.txt)
npm package: @polycity/hardhat-framework
Description: Common test utilities for hardhat development
Author: BoringCrypto, Keno, I'm Software
Latest version: 1.0.1

# hardhat-framework
 
This package helps configuring a repo for hardhat development. This is very opinionated :)

### How to include this?
All the packages needed are included in this package, so all you need to add in your repo's `package.json` is:

```
    "scripts": {
        "test": "hardhat test",
        "format": "prettier --write contracts/**/*.sol *.js *.json test/**/*.js",
        "pretty-quick": "pretty-quick",
        "coverage": "hardhat coverage"
    },
    "devDependencies": {
        "@polycity/hardhat-framework": "polycity/hardhat-framework"
    }
```

### Setting up your .env
You can include your environment variables in a `.env` file in the root of your repo. Alternatively you can set an actual environment variable called `DOTENV_PATH` to point to a central `.env` file to be used. This way you can use the same environment settings accross multiple projects.

Some useful settings:
```
ALCHEMY_API_KEY=
COINMARKETCAP_API_KEY=
HARDHAT_NETWORK=hardhat
HARDHAT_MAX_MEMORY=4096
HARDHAT_SHOW_STACK_TRACES=true
HARDHAT_VERBOSE=true
```

### Use default settings for configuration
Many settings are pre-defined in hardhat-framework. The following changes import all those settings as well as allow you to make any changes/additions to them in a central settings.js file.

To use the defaults defined in hardhat-framework, change or create the following files:

**hardhat.config.js**
```
module.exports = require("@polycity/hardhat-framework").config.hardhat(require("./settings").hardhat)
```

**.prettierrc.js**
```
module.exports = require("@polycity/hardhat-framework").config.prettier(require("./settings").prettier)
```

**.solcover.js**
```
module.exports = require("@polycity/hardhat-framework").config.solcover(require("./settings").solcover)
```

And add a `settings.js` file:
```
module.exports = {
    hardhat: { },
    solcover: { },
    prettier: { }
}
```

TODO:

- Manage deployments
- Github hooks
- Getting husky to work properly (pre-commit in package.json)
- Integrate Certora
- Integrate Slither
npm package: @polycity/mumbai-sdk
Description: 🛠 An SDK for building applications on top of PolyCity Protocol
Latest version: 0.1.0

# PolyCity SDK for Mumbai Network

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/polycity/mumbaicity-sdk.git
```

Move into the mumbaicity-sdk working directory

```sh
cd mumbaicity-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: @polycity/sdk
Description: 🛠 An SDK for building applications on top of PolyCityDex Protocol.
Latest version: 2.0.0-wonder.6

# PolyCityDex 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 polycity is  `0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac`.

## 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/polycity/polycity-sdk.git
```

Move into the polycity-sdk working directory

```sh
cd polycity-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: @polycrestlabs/baml-darwin-x64
Description: This is the **x86_64-apple-darwin** binary for `@polycrestlabs/baml`
Latest version: 0.74.5

# `@polycrestlabs/baml-darwin-x64`

This is the **x86_64-apple-darwin** binary for `@polycrestlabs/baml`
npm package: @polycrestlabs/baml-linux-x64-gnu
Description: This is the **x86_64-unknown-linux-gnu** binary for `@polycrestlabs/baml`
Latest version: 0.74.5

# `@polycrestlabs/baml-linux-x64-gnu`

This is the **x86_64-unknown-linux-gnu** binary for `@polycrestlabs/baml`
npm package: @polycrestlabs/baml-win32-x64-msvc
Description: This is the **x86_64-pc-windows-msvc** binary for `@polycrestlabs/baml`
Latest version: 0.74.5

# `@polycrestlabs/baml-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@polycrestlabs/baml`
npm package: @polycrystal/sdk
Description: 🛠 An SDK for building applications on top of Polycrystal.
Latest version: 1.1.8

# Sushiswap 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  `0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac`.

## 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/sushiswap/sushiswap-sdk.git
```

Move into the sushiswap-sdk working directory

```sh
cd sushiswap-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: @polycuber/script.cli
Description: Is design to make __simple and not performant__ synchronous program with cli.
Latest version: 1.0.5

# Library for commands script

Is design to make __simple and not performant__ synchronous program with cli.

The __typescript definition__ will help to see other exposed features.

```js
const { script, print } = require("@polycuber/script.cli")

script((argv) => {
  print.success("say:", argv.message)
}, {
  arguments: {
    "message": {
      type: "string",
      required: true,
    }
  }
})
```
npm package: @polydelic/apidoc-plugin-ts
Description: A plugin for apidoc leveraging TypeScript interfaces and spitting out json.
Latest version: 1.0.5

# apidoc-plugin-ts

A plugin for [apidoc](https://www.npmjs.com/package/apidoc) that injects `@apiSuccess` params from TypeScript interfaces.
Supports extended and nested interfaces.

## Getting started

```javascript
npm install --save-dev apidoc @polydelic/apidoc-plugin-ts
```

```javascript
yarn add -D apidoc @polydelic/apidoc-plugin-ts
```

A custom api-doc param `@apiInterface` is exposed:

```javascript
@apiInterface (optional path to definitions file) {INTERFACE_NAME}
 ```

## Example

Given the following interface:

```javascript
// filename: ./employers.ts

export interface Employer {
  /**
   * Employer job title
   */
  jobTitle: string;
  /**
   * Employer personal details
   */
  personalDetails: {
    name: string;
    age: number;
  }
}
```

and the following custom param:

```javascript
@apiInterface (./employers.ts) {Person}
```

under the hood this would transpile to:

```javascript
@apiSuccess {String} jobTitle Job title
@apiSuccess {Object} personalDetails Empoyer personal details
@apiSuccess {String} personalDetails.name
@apiSuccess {Number} personalDetails.age
```

*Note if the `Person` interface is defined in the same file then you can drop the path:*

```javascript
@apiInterface {Person}
```
npm package: @polydex/sdk
Description: 🛠 An SDK for building applications on top of polydex.
Author: polytea
Latest version: 4.0.1

# Polydex 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/polydex/polydex-sdk/workflows/CI/badge.svg)](https://github.com/polydex/polydex-sdk)
[![npm version](https://img.shields.io/npm/v/@polydex-lib/sdk/latest.svg)](https://www.npmjs.com/package/@polydex-lib/sdk/v/latest)

## 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/polydex-fi/polydex-sdk.git
```

Move into the polydex-sdk working directory

```sh
cd polydex-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: @polydex/uikit
Description: Set of UI components for polydex projects
Latest version: 0.2.40

# 🥞 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/polydex-uikit/)
npm package: @polydice/icookfont-sass
Description: ICOOK FONT
Latest version: 1.0.0

# icookfont-sass

iCook's custom font as a gem.

## Update font file

1. Download latest `config.json` from Fontello website
2. Copy it to `vendor/assets/fonts/config.json`
3. Run `bundle exec fontello convert`

## Release new version

1. Edit `lib/icookfont/sass/version.rb` and bump version number
2. Git push and our CI server will pack and publish a new version
3. Celebrate!

## License

Copyright 2016 Polydice, Inc.
npm package: @polydice/jquery-tinyslide
Description: A tiny slider based on jQuery
Author: ichi
Latest version: 1.1.0

## jquery-tinyslide

[![npm version](https://badge.fury.io/js/jquery-tinyslide.svg)](https://badge.fury.io/js/jquery-tinyslide)

Transfer multiple elements into slide in one magic. 

### Install

```
npm install --save jquery-tinyslide
```

or 

```
bower install --save jquery-tinyslide
```

### Dependency

Since this package acts as a jQuery extension, it depends on jQuery. Be sure that you have jQuery installed properly before requiring it.

### Usage

if you install it with npm, you can just: 

```
require('jquery-tinyslide');
```

otherwise you could require your own asset management tool(ex. sprocket) if you install it with bower.

`tinyslide` now should work as expected as a jQuery extension!

Now we can register DOM element which we would like it be a slide.

```js
$(MYSLIDE).tinySlide({
  title: 'li',
  interval: 4000,
  $pause: $(SLIDE).find('li'),
  onPause(pos) {
    return changepic(pos);
  },
  onRotate(pos) {
    return changepic(pos);
  },
});
```

this block above will **turn all li element in MYSLIDE element** to have slide bebaviour and attribute.

options will be introduced in next section.

### Options

`startIdx` _number_ (default: 0)

Beginning index of toggled elements.

`interval` _number_ (default: 2000)

Interval time from one to the next.

`title` _string_ (default: 'li')

Element type of slide to be toggled.

`activeClass` _string_ (default: 'current')

Class you want to attach when element is active.

`$pause` _DOM Element_ (default: null)

Set the controll element for controlling lifecycle of the slide. Pause when mouseenter event is triggered, and restart when mouseleave evnet is triggered,

`onPause(position)` _function_

It will be triggered when slide pause. 

`onRestart(position)` _function_

It will be triggered when slide restart.

`onRotate(position)` _function_

It will be triggered when slide finish one rotate.

### Test

`npm test`

### Demo

Check our simple [sample](https://github.com/polydice/jquery-tinyslide/tree/master/sample).

### Contribute

PR, issue and advice are always welcome.

### Lisence

Check lisence [here](https://github.com/polydice/jquery-tinyslide/blob/master/LICENSE).
npm package: @polydice/pasta-js
Description: It makes easy to collect data to send.
Latest version: 1.0.0

## pasta-js

[![Build Status](https://travis-ci.org/polydice/pasta-js.svg)](https://travis-ci.org/polydice/pasta-js)

It makes easy to collect data to send.

### How to run examples?
- `npm install`
- `npm start`
- Open `http://localhost:8000/ex01`, and show log in the terminal.

### Installation

Using npm:

```
$ npm install --save pasta-js
```

Then with a module bundler like webpack

```
// using ES6 modules
import {Pasta} from 'pasta-js'

// using CommonJS modules
var Pasta = require('pasta-js').pasta;
```

Or UMD build in `dist/pasta-full.min.js` in the installed folder.

### Browser Support
It should use some polyfills expect for modern browsers, such as Chrome, Firefox, Microsoft Edge and Safari.

### API

#### Initialization - Pasta(config)
- *config* : Object(required)

core parameters

- endpoint: String(required).
- maxBuff: Number(option), default: `10`. It is the limit for the buffer to send.
- username: Any(option), default: `null`.


```
  var tracking = new Pasta({
    endpoint: '',
  });
```

#### push(data)

- *data*: Object(required), any tracked data.

After initialization, use push to candidated queue. It will send automatically if buffer is up to limit (default: 10).

```
  tracking.push({
    event: 'click-button',
    count: 4
  });
```

#### send()

Send data to host by manually.

```
  tracking.send();
```

#### Tracked information

Every time a track is called, the following information is sent:

- page_path
- page_title
- page_url
- referrer
- time
- user_agent
- username
- viewport

They can disable or overwrite at initialization. But `time` can not disable or overwrite.

```
  var tracking = new Pasta({
    endpoint: '',
    customInfo: {
      viewport: false, // disable to send
      page_title() { return 'test title'; } // overwrite the data
    }
  });
```

It can set other information to send every time.

```
  var tracking = new Pasta({
    endpoint: '',
    customInfo: {
      customKey() { return 'custom value'; }
    }
  });
```

### License
Check license [here](https://github.com/polydice/pasta-js/blob/master/LICENSE).
npm package: @polyfact/ai-git
Description: Generates auto commit messages with Polyfact
Author: contact@polyfact.com
Latest version: 1.0.5

# Git AI

Git AI is a tool that helps generate commit messages using AI. It simplifies the commit process by automatically generating a short, descriptive commit message based on your code changes.

## Features

- Analyzes staged git diffs and generates a commit message summarizing the changes
- Leverages Polyfact's AI API to generate natural language
- Handles large diffs by splitting into multiple API requests
- Customizable options like commit message language, model name, etc.
- Auto-commit mode to directly commit the generated message
- Optional git commit --amend to open editor and refine message

## Usage

### Prerequisites

- Node.js
- Git CLI
- [Polyfact Token](https://app.polyfact.com)

### Installation

```
npm install -g @polyfact/git-ai
```

or

```
yarn global add @polyfact/git-ai
```

### Configuration

Create a `.ai-gitrc` file to customize options.

```
ai-git init-config
```

Or set options as CLI flags:

```
ai-git commit --token YOUR_TOKEN --language english --model gpt-3.5-turbo
```

### Basic Usage

```
# Auto generate and commit
ai-git commit

# Generate message without auto commit
ai-git commit --no-autocommit

# Open editor to refine message after commit
ai-git commit --editor
```

## Configuration

The CLI and config file options allow customizing the commit message generation:

- `token` - Polyfact API key
- `model` - AI model name
- `maxTokens` - Max tokens per API request
- `language` - Commit message language
- `autocommit` - Directly create commit
- `editor` - Open editor after commit
- `exclude` - Patterns to exclude from diff
- `filter` - Git diff filter flag
- `template` - Prompt template for AI
npm package: @polyfact/vectorizer
Description: Here is a README generated from the code snippet:
Author: kgricour
Latest version: 1.0.5

Here is a README generated from the code snippet:

# @polyfact/vectorizer

Vectorize code repositories and PDFs into vector representations using Polyfact AI.

## Installation

```
npm install @polyfact/vectorizer
```

Or install globally to use the CLI:

```
npm install -g @polyfact/vectorizer
```

## Usage

### As a library

```js
import Vectorizer, { SourceType } from "@polyfact/vectorizer";

const vectorizer = new Vectorizer(token, maxTokens, SourceType.DIRECTORY);

const files = await vectorizer.readFiles(filePaths);
await vectorizer.vectorize(files, progressCallback);

const memoryId = vectorizer.getMemoryId();
```

### CLI

```
$ @polyfact/vectorizer --help

Usage: @polyfact/vectorizer [options] [command]

Options:
  -V, --version   output the version number
  -h, --help      display help for command

Commands:
  repo [files...]  Transform your entire repository into a vector representation
  pdf [files...]   Transform your entire PDFs into a vector representation
  help [command]   display help for command
```

Vectorize a code repository:

```
$ @polyfact/vectorizer repo src/ --token abc123 --max-token 1000
```

Vectorize PDF files:

```
$ @polyfact/vectorizer pdf file1.pdf file2.pdf --token abc123
```

The memory ID will be output after vectorization to use in your project with the Polyfact SDK.

## License

MIT