Giter Site home page Giter Site logo

jc0803kevin / filecoin-signing-tools Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zondax/filecoin-signing-tools

0.0 0.0 0.0 3.32 MB

Filecoin Signing Library

License: Apache License 2.0

Rust 86.20% Makefile 1.25% Shell 1.03% JavaScript 8.55% Java 1.41% Objective-C 0.25% Swift 0.20% Ruby 0.35% Dart 0.77%

filecoin-signing-tools's Introduction

Filecoin Signing Tools

License CircleCI npm version

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)
  • JSON RPC Server

    • Focus: Exchange integration
    • Exposes most of the functions available in the signing library
    • Lotus integration:
      • nonce caching
      • determine testnet vs mainnet
      • retrieve nonce
      • submit signed transaction
      • retrieve tx status
  • Examples

    Caller Callee Status
    Node.js JSONRPC Service Ready ✔️ Link
    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

Service

To run these tests, you need to set two environment variables first so tests can reach a Lotus node:

LOTUS_SECRET_URL some_url
LOTUS_SECRET_JWT some_jwt

Then you can run:

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

filecoin-signing-tools's People

Contributors

c410-f3r avatar dependabot[bot] avatar ec2 avatar emmanuelm41 avatar gfpacheco avatar jleni avatar karrq avatar mrsmkl avatar neithanmo avatar rllola avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.