All Projects → reef-defi → reef-chain

reef-defi / reef-chain

Licence: GPL-3.0 license
EVM compatible chain with NPoS/PoC consensus

Programming Languages

rust
11053 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to reef-chain

interbtc
interBTC: Trustless Bitcoin on Polkadot | kBTC: Trustless Bitcoin on Kusama
Stars: ✭ 136 (-4.23%)
Mutual labels:  substrate, polkadot, defi
Astar
The dApp hub for blockchains of the future
Stars: ✭ 533 (+275.35%)
Mutual labels:  evm, substrate, polkadot
polkaswap-web
Polkaswap is a non-custodial, cross-chain AMM DEX protocol for swapping tokens based on Polkadot and Kusama relay chains, Polkadot and Kusama parachains, and blockchains directly connected via bridges. Polkaswap removes trusted intermediaries and provides the opportunity for faster trading.
Stars: ✭ 43 (-69.72%)
Mutual labels:  substrate, polkadot, defi
Substrate
Substrate: The platform for blockchain innovators
Stars: ✭ 6,275 (+4319.01%)
Mutual labels:  substrate, polkadot
tools
Various cli tools for Polkadot and Substrate chains, including basic node monitoring, making API queries via a cli app and other command-line tools
Stars: ✭ 173 (+21.83%)
Mutual labels:  substrate, polkadot
py-substrate-interface
Python Substrate Interface
Stars: ✭ 125 (-11.97%)
Mutual labels:  substrate, polkadot
subsocial-offchain
Off-chain storage for Subsocial blockchain. This app builds user feeds and notifications by subscribing to Substrate events.
Stars: ✭ 24 (-83.1%)
Mutual labels:  substrate, polkadot
digital-assets-association-poland
🐋 🐋 https://meetup.com/Silesia-Blockchain-Meetup 🐋 🐋
Stars: ✭ 14 (-90.14%)
Mutual labels:  substrate, polkadot
prb-math
Solidity library for advanced fixed-point math
Stars: ✭ 404 (+184.51%)
Mutual labels:  evm, defi
blockhead
Crypto portfolio tracker, DeFi dashboard, NFT viewer and data explorer for the Ethereum/EVM-based blockchain ecosystem and the web 3.0-powered metaverse https://gitcoin.co/grants/2966/blockhead
Stars: ✭ 41 (-71.13%)
Mutual labels:  evm, defi
subwasm
Subwasm is a cli utility to help you know more about WASM Runtimes. It help downloading, inspecting and comparing Substrate based chains such as Polkadot or Kusama.
Stars: ✭ 53 (-62.68%)
Mutual labels:  substrate, polkadot
Setheum
Setheum Network - Islamic Finance DeFi, Multi-Stablecoins, Payments, EVM, DeFi on Rockets to Heaven => 🚀ready for hacking🚀
Stars: ✭ 15 (-89.44%)
Mutual labels:  substrate, defi
polkascan-pre-harvester
Polkascan PRE Harvester
Stars: ✭ 23 (-83.8%)
Mutual labels:  substrate, polkadot
mangata-node
Mangata ❤️ Substrate & Polkadot
Stars: ✭ 52 (-63.38%)
Mutual labels:  substrate, polkadot
polkascan-os
Polkascan Open Source
Stars: ✭ 52 (-63.38%)
Mutual labels:  substrate, polkadot
ts
Misc. TypeScript definitions that are not yet available on DefinitelyTyped but required by other projects in this repo. Should be merged with upstream projects or the DT project.
Stars: ✭ 13 (-90.85%)
Mutual labels:  substrate, polkadot
pali-wallet
The Official Syscoin browser wallet. Open source, easy to use & multichain.
Stars: ✭ 30 (-78.87%)
Mutual labels:  evm, defi
datdot-node-rust
datdot blockchain node in rust
Stars: ✭ 43 (-69.72%)
Mutual labels:  substrate, polkadot
trustbase
Smart Contract parachain interoperate with Polkadot and Ethereum
Stars: ✭ 22 (-84.51%)
Mutual labels:  substrate, polkadot
polkadot-wiki-old
The Polkadot wiki.
Stars: ✭ 56 (-60.56%)
Mutual labels:  substrate, polkadot

Reef Chain

Reef chain is written in Rust. A basic familiarity with Rust tooling is required.

To learn more about Reef chain, please refer to Documentation.

Clone

To clone the repo with its submodules run:

git clone --recursive https://github.com/reef-defi/reef-chain

Rust Setup

If you don’t have Rust already, you can install it with:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

You can install developer tools on Ubuntu 20.04 with:

sudo apt install make clang pkg-config libssl-dev build-essential

You can install the latest Rust toolchain with:

make init

Start a development node

The make run command will launch a temporary node and its state will be discarded after you terminate the process.

make run

Run a persistent single-node chain

Use the following command to build the node without launching it:

make build

This command will start the single-node development chain with persistent state:

./target/release/reef-node --dev

Purge the development chain's state:

./target/release/reef-node purge-chain --dev

Start the development chain with detailed logging:

RUST_LOG=debug RUST_BACKTRACE=1 ./target/release/reef-node -lruntime=debug --dev

Run tests

make test

Run benchmarks

Run runtime benchmark tests:

make bench

Run module benchmark tests:

cargo test -p module-poc --all-features

Run the module benchmarks and generate the weights file:

./target/release/reef-node benchmark \
    --chain=dev \
    --steps=50 \
    --repeat=20 \
    --pallet=module_poc \
    --extrinsic='*'  \
    --execution=wasm \
    --wasm-execution=compiled \
    --heap-pages=4096 \
    --output=./modules/poc/src/weights.rs

Run in debugger

make debug

Embedded docs

Once the project has been built, the following command can be used to explore all parameters and subcommands:

./target/release/reef-node -h

Release builds

To list all available release builds run:

git tag

To create a corresponding production build, first checkout the tag:

git checkout testnet-1

Then run this command to install appropriate compiler version and produce a binary.

make release

On-Chain upgrade builds

Build the wasm runtime with:

make wasm

Fork reef-chain

You can create a fork of a live chain (testnet / mainnet) for development purposes.

  1. Build binary and sync with target chain on localhost defaults. You will need to use unsafe rpc.
  2. Execute the Make command ensuring to specify chain name (testnet / mainnet).
make chain=testnet fork
  1. Now run a forked chain:
cd fork/data
./binary --chain fork.json --alice
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].