open-index/open-npm huggingface dataset:
npm package: @oraichain/cwtools
Description: You can install cwtools globally using npm `npm install -g @oraichain/cwtools` or yarn `yarn global add @oraichain/cwtools`
Author: Thanh Tu
Latest version: 0.0.88

# Installation

You can install cwtools globally using npm `npm install -g @oraichain/cwtools` or yarn `yarn global add @oraichain/cwtools`

# Usage

Type `cwtools -h`

```bash
cwtools [command]

Commands:
  cwtools genjs   generate JavaScript classes for the contract folders
  cwtools gents   generate TypeScript classes for the contract folders
  cwtools build   build a list of contract folders
  cwtools wasm    wasm commands
  cwtools script  run custom typescript file

Options:
  -h, --help        Show help                                          [boolean]
      --version     Show version number                                [boolean]
      --env         Path to JSON config file                   [default: ".env"]
      --file-input  Path to JSON config file

```

Cosmwasm commands with encrypted mnemonic

Custom script: `scripts/show_account.ts`

```ts
export default async (argv, common, exports) => {
  const { stringToPath } = exports['@cosmjs/crypto'];
  const { GasPrice } = exports['@cosmjs/stargate'];
  const { SigningCosmWasmClient } = exports['@cosmjs/cosmwasm-stargate'];
  const { DirectSecp256k1HdWallet } = exports['@cosmjs/proto-signing'];

  const prefix = process.env.PREFIX || 'orai';
  const mnemonic = argv.ENCRYPTED_MNEMONIC ? common.decryptMnemonic(argv.ENCRYPTED_MNEMONIC) : argv.MNEMONIC;
  const wallet = await DirectSecp256k1HdWallet.fromMnemonic(mnemonic, {
    hdPaths: [stringToPath(process.env.HD_PATH)],
    prefix
  });
  const [firstAccount] = await wallet.getAccounts();

  const client = await SigningCosmWasmClient.connectWithSigner(process.env.RPC_URL, wallet, {
    gasPrice: GasPrice.fromString(`${process.env.GAS_PRICES}${prefix}`)
  });

  console.log(firstAccount);
};
```

```bash
# generate encrypted mnemonic
cwtools script scripts/show_account.ts

# then put it into .env file then run
cwtools wasm -h
```

# Experimental build

Turn on all optimization params to save size  
`cwtools build contract --cargo='-Z build-std=std,panic_abort -Z build-std-features=panic_immediate_abort' --RUSTFLAGS=-Zlocation-detail=none`
npm package: @oraichain/duckdb-http
Description: Connect to DuckDB over the HTTP protocol, allowing multiple processes to read and write concurrently
Author: Oraichain Labs
Latest version: 1.0.3

# duckdb-http

Connect to DuckDB over the HTTP protocol, allowing multiple processes to read and write concurrently.

## Installation

```bash
npm install duckdb-http
```

## Usage

```ts
import { Database } from 'duckdb-http';

async function main() {
  const db = await Database.connect({
    baseUrl: 'http://localhost:8888',
    apiKey: 'mysecret'
  });

  const rows = await db.all('SELECT * FROM transactions LIMIT 1');

  console.log('data:', rows);
}

main();
```

## License

MIT
npm package: @oraichain/evm-entry-point
Description: This project demonstrates a basic Hardhat use case. It comes with a sample contract, a test for that contract, and a Hardhat Ignition module that deploys that contract.
Latest version: 1.0.6

# Sample Hardhat Project

This project demonstrates a basic Hardhat use case. It comes with a sample contract, a test for that contract, and a Hardhat Ignition module that deploys that contract.

Try running some of the following tasks:

```shell
npx hardhat help
npx hardhat test
REPORT_GAS=true npx hardhat test
npx hardhat node
npx hardhat ignition deploy ./ignition/modules/Lock.ts
```
npm package: @oraichain/mcp-server
Description: Oraichain Multichain MCP Server
Latest version: 0.0.21

# Test Oraichain MCP client & server

## Install dependencies

```bash
npm install -g vite-node
```

## Update .env file

```bash
MISTRAL_API_KEY=
RPC_URL=
```

In the root directory, run:

## Run the MCP server

```bash
tsx test/oraichainMCPServer.ts
```

## Run the MCP client

```bash
tsx test/oraichainMCPClient.ts test/oraichainMCPServer.ts
```

- When asking for prompt in MCP client, enter the following as an example:

```bash
query balance of wallet orai14h0n2nlfrfz8tn9usfyjrxqd23fhj9a0ec0pm7 with denom orai
```

# Test Oraichain SSE MCP client & server

## Install dependencies

```bash
npm install -g tsx vite-node
```

## Update .env file

```bash
MISTRAL_API_KEY=
RPC_URL=
```

In the root directory, run:

## Run the MCP server

```bash
vite-node test/oraichainSSEMCPServer.ts
```

## Run the MCP client

```bash
vite-node test/oraichainSSEMCPClient.ts
```

# Test Oraichain SSE MCP client & server with Mistral AI Agent

## Update .env file

```bash
MISTRAL_API_KEY=
RPC_URL=
```

In the root directory, run:

## Run the MCP server

```bash
vite-node test/oraichainSSEMCPServer.ts
```

## Run the MCP client

```bash
vite-node test/oraichainSSEMCPClientWithAgent.ts
```

Then, start asking questions to the agent, for example: 

- `query balance of wallet orai1f5nyvnx5ks738d5ys7pwa0evc42v6ff043h6d2 with denom orai`

# Run MCP Server Inspector for debugging

1. Start the MCP server

2. Start the inspector using the following command:

```bash
# you can choose a different server
SERVER_PORT=9000 npx @modelcontextprotocol/inspector
```

3. Connect to the MCP server via Inspector

For Stdio:

![Stdio](image-1.png)

For SSE:
![SSE](image.png)
npm package: @oraichain/notebookjs
Description: Parse and render Jupyter/IPython notebooks.
Author: TuPT
Latest version: 0.1.16

# @oraichain/notebookjs

Notebook.js parses raw [Jupyter](http://jupyter.org/)/[IPython](http://ipython.org/) notebooks, and lets you render them as HTML. See a **[working demo here](https://cw-notebook.web.app/)**.

## Usage

```js
import nb from './notebook';

nb.updateDepedencies({
  'ts-results': require('ts-results'),
  bech32: require('bech32'),
  '@cosmjs/stargate': require('@cosmjs/stargate'),
  '@cosmjs/cosmwasm-stargate': require('@cosmjs/cosmwasm-stargate'),
  '@oraichain/cw-simulate': require('@oraichain/cw-simulate'),
  '@oraichain/cosmwasm-vm-zk': require('@oraichain/cosmwasm-vm-zk'),
  '@oraichain/common-contracts-sdk': require('@oraichain/common-contracts-sdk'),
  '@oraichain/oraidex-contracts-sdk': require('@oraichain/oraidex-contracts-sdk'),
  '@oraichain/dao-contracts-sdk': require('@oraichain/dao-contracts-sdk')
});

// fetch notebook
const notebook = await nb.fetch('notebook.ipynb');
document.body.appendChild(notebook.render());

// run all notebook
await nb.runAll();
```
npm package: @oraichain/oracle-price-feed-bot
Description: Simple oracle price feed bot
Author: Oraichain Labs
Latest version: 1.0.23

# Oracle-price-feeder-bot

Simple-price-feeder-bot submit price to cw-oracle-hub contract

## Installation 
You can install oraclePriceFeeds globally using npm `npm install -g @oraichain/oracle-price-feed-bot` or yarn `yarn global add @oraichain/oracle-price-feed-bot`

## Installation from source

1. Clone this repository
```https://github.com/oraichain/oracle-price-feeder-bot```

1. Run ```yarn``` to install all dependencies <br>

2. Create .env file with same structure like .env.example

3. Run ```yarn build```

4. Run ```yarn start``` 


## Usage

Type `oraclePriceFeeds`
```bash
oraclePriceFeeds [command]

Commands:
  oraclePriceFeeds start  start feed prices to oracle contract

Options:
  -h, --help     Show help                                             [boolean]
      --version  Show version number                                   [boolean]
      --env      Path to JSON config file                      [default: ".env"]
```