open-index/open-npm huggingface dataset:
npm package: @parity/resolc
Description: ```typescript import { compile } from "@parity/resolc"; const sources = { ["contracts/1_Storage.sol"]: {     content: readFileSync("fixtures/storage.sol", "utf8"), }
Author: Parity
Latest version: 1.0.0

# Usage from Node.js

```typescript
import { compile } from "@parity/resolc";
const sources = {
["contracts/1_Storage.sol"]: {
    content: readFileSync("fixtures/storage.sol", "utf8"),
}

const out = await compile(sources);
```

# Usage from shell

```bash
 npx @parity/resolc@latest --bin contracts/1_Storage.sol
```
npm package: @parity/revive
Description: Node.js module to compile Solidity contracts to Polkavm bytecode, using [Revive](https://github.com/paritytech/revive)
Author: Parity
Latest version: 0.0.21
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @parity/revive

Node.js module to compile Solidity contracts to Polkavm bytecode, using [Revive](https://github.com/paritytech/revive)

# Usage

```typescript
const sources = {
["contracts/1_Storage.sol"]: {
    content: readFileSync("fixtures/storage.sol", "utf8"),
}

const out = await compile(sources);
```
npm package: @parity/schnorrkel-js
Description: a wasm port of the schnorrkel crypto library.
Author: Parity Technologies
Latest version: 0.1.5

# Schnorrkel-js

Provides a Javascript wrapper for some of the high-level functionality provided by [schnorrkel](https://github.com/w3f/schnorrkel).


# How to Use

### Install 

```
npm install @parity/schnorrkel-js
```

### API 

The functions exposed via wasm are explained [here(rust)]() or [here(js)]. You can clone the repo and run the following to see the details: 

```
cargo docs --open 
```

# Build 

Current experimental setup is created using [`wasm-pack`](https://rustwasm.github.io/wasm-pack/installer/) and [`webpack/node/npm`](https://www.npmjs.com/get-npm). Make sure to have both of them, alongside the latest **nightly** version of Rust installed.

In the root of the project run: 

```bash
wasm-pack build --target browser
```

A directory named `pkg` should be created. Then: 

```bash
cd pkg
npm link 
```

This creates a local binding to npm, instructing it to use this folder whenever `schnorrkel-js` was imported as an npm module using `require()` or `import`. 

Next, create head to the provided `www` folder (experimental test folder created via npm: `npm init wasm-app www`) and: 

```
# Run just once
npm link schnorrkel-js
npm install
npm run start
```

The current `index.js` does absolutely nothing. It just binds the compiled wasm blob as a parsed object to the `window` object so that it can be easily tested in the console. 

```javascript
import * as schnorrkel from 'schnorrkel-js'

window.schnorrkel = schnorrkel
```

To make any further changes, given that the linking with `npm link` is correct, just re-compile with `wasm-pack build` and let the `npm run start` be running in a separate process. It should automatically reload. 

The default webpage 


# Tests

Run the tests in Node.Js environment via

```
wasm-pack test --node 
```

or to run them directly in the browser:

add this line to the tests module in lib.rs

```
wasm_bindgen_test_configure!(run_in_browser);
```

Then

```
wasm-pack test --chrome  
```