Git Product home page Git Product logo

filecoin-rs's Introduction

Filecoin Signing Tools (FFI)

License CircleCI npm version

You can find more information in the Documentation Site

  • Rust Native Library

    • Secp256k1
    • Multisig (Work in progress)
    • BLS
    • Hardware Wallet support (Ledger Nano S/X)
    • Filecoin transactions (CBOR <> JSON serialization)
  • WASM Library

    • Secp256k1
    • Multisig (Work in progress)
    • BLS
    • Hardware Wallet support (Ledger Nano S/X)
    • 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
    Browser WASM + Ledger Ready ✔️ Link
    Node.js / Mocha WASM Ready ✔️ Link
    Rust Rust + Ledger 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

make deps

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 link_wasm

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

Command Description
make test_wasm_unit Unit tests
make test_wasm_node Node integration tests
make test_wasm_browser Browser integration tests
make test_wasm_ledger Ledger integration tests

filecoin-rs's People

Contributors

jleni avatar rllola avatar c410-f3r avatar dependabot[bot] avatar

Watchers

James Cloos 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.