Skip to content
/ chain Public
forked from crypto-com/thaler

Pre-alpha version prototype of Crypto.com Chain⛓

License

Notifications You must be signed in to change notification settings

tomtau/chain

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crypto.com Chain

Table of Contents

  1. Description
  2. Contributing
  3. License
  4. Documentation
  5. Building
    5.1. Build Prerequisites
    5.2. Build from Source Code
  6. Start a Local Full Node
  7. Send your First Transaction
  8. Testing
  9. Useful LInks

This repository contains the pre-alpha version prototype implementation of Crypto.com Chain. The current repository consists of the following Rust sub-crates:

  • chain-abci: the Tendermint ABCI application that currently does the transaction validation etc.

  • chain-core: the library that contains the main type definitions and any utility code (such as serialization), so that it can be used in chain-abci and other applications.

  • dev-utils: currently a minimal development tool for generating genesis.json

  • client-[common|index|core|rpc]: Client backend implementation for transaction creation and wallet management. Follow these links for more details:

Please abide by the Code of Conduct in all interactions, and the contributing guidelines when submitting code.

Apache 2.0

Technical documentation can be found in this Github repository (you can read it in this hosted version).

Crypto.com chain requires the following to be installed before build.

After all dependencies are installed, add the following lines to ~/.cargo/config to enable generating instructions for Streaming SIMD Extensions 3 and Advanced Vector Extensions on build:

[build]
rustflags = ["-Ctarget-feature=+aes,+sse2,+sse4.1,+ssse3"]

(TODO: In the future, the build tooling may be migrated to Bazel / Nix etc. for reproducible builds.)

$ git clone [email protected]:crypto-com/chain.git
$ cd chain

$ cargo build

The built executables will be put inside folder /target/debug/ by default.

Please follow the instruction to deploy a local full node.

Kindly refer to this instruction to perform transactions between addresses.

To run the test cases

$ cargo test

To measure code coverage by cargo-tarpaulin:

$ cargo tarpaulin

This only works on x86_64 processors running Linux. On different platforms, you will need to use Docker:

$ docker run --security-opt seccomp=unconfined -v "$PWD:/volume" xd009642/tarpaulin

About

Pre-alpha version prototype of Crypto.com Chain⛓

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 79.6%
  • C 9.5%
  • TypeScript 6.2%
  • Shell 2.4%
  • Makefile 1.4%
  • C++ 0.7%
  • Other 0.2%