All Projects → input-output-hk → js-cardano-wasm

input-output-hk / js-cardano-wasm

Licence: MIT license
various cardano javascript using wasm bindings

Programming Languages

rust
11053 projects
javascript
184084 projects - #8 most used programming language
purescript
368 projects

DEPRECATED

These libraries are no longer compatible with Cardano since the 29th July 2020 Hardfork. The whole serialisation format has been redefined. Transactions are no longer the same either.

cardano wasm binding for JavaScript

Installation

# install rustup
curl https://sh.rustup.rs -sSf | sh
# use nightly version
rustup install nightly-2018-06-05
rustup target add wasm32-unknown-unknown --toolchain nightly

Build the Library

To Compile the rust crypto to a Web Assembly (WASM) module and build JS library run the ./build script. (only necessary if you want to build locally)

Run the Example

There is a simple example application in js-example that can be run to test some of the features.

installation

within js-example/ folder

  1. npm install
  2. npm run install

Building

within js-example/ run npm run build

Running

open js-example/index.html in any browser

Use the Crypto Library

Install

You can either build the library locally on your machine to test the latest version with your project or install via NPM.

Install locally:

in the root of this repo: npm link in the root of your project: npm link rust-cardano-crypto

Install via NPM:

in the root of your project: npm install rust-cardano-crypto

Import the API in Your Code

// Import like this:
import CardanoCrypto from 'rust-cardano-crypto'
// Or access as global in browsers:
CardanoCrypto.PaperWallet.scramble(iv, password, input)

Notes

The rust code contains rwc/ a fork of rust-crypto without the dependencies that cannot be build easily in a wasm environment, and minus the algorithms that are not useful.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].