Skip to content
This repository has been archived by the owner on Sep 9, 2024. It is now read-only.

consenlabs/token-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9fc4f5c · Sep 9, 2024
Jan 26, 2021
May 28, 2020
Nov 6, 2020
Nov 6, 2020
Nov 6, 2020
Jan 26, 2021
Jul 7, 2020
Dec 3, 2020
Nov 6, 2020
Dec 29, 2020
Jan 26, 2021
Nov 28, 2020
Nov 9, 2020
Apr 30, 2020
Dec 29, 2020
Nov 6, 2020
Sep 1, 2022
Jul 2, 2020
Dec 29, 2020
Nov 1, 2019
Dec 28, 2020
Nov 5, 2019
Dec 13, 2019
Oct 23, 2019
May 26, 2020
Dec 29, 2020
Nov 9, 2020
Mar 25, 2020
Dec 29, 2020
Sep 9, 2024
Jan 3, 2020
Nov 20, 2020

TokenCoreX

Next generation core inside imToken Wallet.

A cross-platform library that implements crypto wallet functions for blockchains, exporting c interfaces in Protobuf protocol. This library totally wrote in Rust, and now provides friendly interfaces for the mobile platform including ReactNative, iOS, and Android.

TokenCoreX welcomes contribution from everyone. See CONTRIBUTING.md for help getting started. In all communications and contributions, this project follows the Code of Conduct

Goals

  • Abstration interfaces that provide crypto wallet common logic with multi blockchain support
  • Cross platform, on mobile, desktop, server side
  • Multi keystore support, with file, HSM, KMS, hardware-wallet

Packages

  • tcx wallet interface wrapper
  • tcx-bch | tcx-btc-fork | tcx-tron | tcx-ckb packages contain particular chain operations
  • tcx-chain keystore and signer interface
  • tcx-proto protobuf datastructure definition
  • tcx-constants blockchain spec definition
  • [tcx-primitive | tcx-crypto] low level component

Examples

We provide three example applications,

Test Coverage

We can use tarpaulin to know the coverage rate.

The easy way to run coverage test is using docker,

docker run --security-opt seccomp=unconfined -v "${PWD}:/volume" xd009642/tarpaulin sh -c "cargo tarpaulin --out Html"

After couple minutes, it will generate html report of project root directory named tarpaulin-report.html.

Code Styles

This project is using pre-commit. Please run cargo clean && cargo test to install the git pre-commit hooks on you clone.

Every time you will try to commit, pre-commit will run checks on your files to make sure they follow our style standards and they aren't affected by some simple issues. If the checks fail, pre-commit won't let you commit.

Read More

License

Apache Licence v2.0