Skip to content

retrieval-markets-lab/filecoin-signing-tools

 
 

Repository files navigation

Filecoin Signing Tools

License GithubActions npm version


zondax_light zondax_dark

Please visit our website at zondax.ch


Relevant Note ⚠️⚠️

We are excited to announce that we have created a new package called izari-filecoin 🔗, which will be the successor to filecoin-signing-tools. Izari Filecoin is an advanced and user-friendly package that includes several new features and improvements that were not available in this project. The new package is also better organized and easier to use. While this project will continue to be maintained, no new features will be added to it. Therefore, we strongly recommend that you switch to Izari Filecoin to take advantage of its new features and benefits.


You can find more information in the Documentation Site

  • Rust Native Library

    • Secp256k1
    • Multisig (Work in progress)
    • BLS
    • Filecoin transactions (CBOR <> JSON serialization)
  • WASM Library

    • Secp256k1
    • Multisig (Work in progress)
    • BLS
    • Filecoin transactions (CBOR <> JSON serialization)
  • Examples

Caller Callee Status
Browser WASM Ready ✔️ Link
Node.js / Mocha WASM Ready ✔️ Link
C Rust Ready ✔️ Link
C++ Rust Ready ✔️ Link
Java Rust Ready ✔️ Link
Kotlin Rust Ready ✔️ Link
Go Rust Ready ✔️ Link
Objective-C Rust Ready ✔️ Link
Swift Rust Ready ✔️ Link
Flutter Rust Ready ✔️ Link
React Native Rust Planned ⏳ Soon

Running tests and examples

TIP: A good place to look for reproducible steps is the circleci configuration of this project

Installing dependencies

You will need rust installed.

# Install wasm-pack in your system
$ make install_wasmpack
# Install some utilitary tools
$ make install_deps_rust

Note: wasm parck are required if you want to use the wasm version of the lib.

Rust

cargo test -p filecoin-signer

WASM

Build WASM and link it locally so examples are linked to the local version:

make build_npm

After this, you can run the following tests / examples:

Command Description
make test_npm_unit Unit tests
make test_npm_node Node integration tests
make test_npm_browser Browser integration tests

Releases

No releases published

Packages

No packages published

Languages

  • Rust 78.1%
  • TypeScript 13.0%
  • JavaScript 2.7%
  • Java 2.0%
  • Makefile 1.9%
  • Dart 1.1%
  • Other 1.2%