An eth2 -> tangle network relayer for syncing EVM data on Tangle.
This repo uses Rust so it is required to have a Rust developer environment set up. First install and configure rustup:
# Install
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Configure
source ~/.cargo/env
Configure the Rust toolchain to default to the latest stable version:
rustup default stable
rustup update
Great! Now your Rust environment is ready!
git clone https://github.com/webb-tools/tangle.git
cd tangle
cargo build --release -p tangle-standalone
./scripts/run-standalone-local.sh --clean
Note that this will start a clean network state, if you want to continue running on an old state (using old database)
just omit the --clean
flag.
echo "gown surprise mirror hotel cash alarm raccoon you frog rose midnight enter//webb//0" &> /tmp/empty/secret_key
Before getting started, make sure you have Git LFS installed in your computer. Open a terminal window and run:
git-lfs --version
If it doesn't recognize this command, you must install it. There are several installation methods that you can choose according to your OS. To install it with Homebrew:
brew install git-lfs
Once installed, open your local repository in a terminal window and install Git LFS in your repository. If you're sure that LFS is already installed, you can skip this step. If you're unsure, re-installing it does no harm:
git lfs install
# Edit configuration as required
eth2substrate-block-relay-rs/config.toml
export ETH1_INFURA_API_KEY="your_infura_key"
cargo build --release -p node-template
./target/release/node-template --tmp --chain local --alice \
--rpc-cors all --rpc-external --rpc-methods=unsafe \
--port 30433 \
--light-client-init-pallet-config-path=./crates/eth2-pallet-init/config.toml \
--light-client-relay-config-path=./eth2substrate-block-relay-rs/config.toml
--rpc-port 9444
Interested in contributing to the Webb Eth2 light client relayer? Thank you so much for your interest! We are always appreciative for contributions from the open-source community!
If you have a contribution in mind, please check out our Contribution Guide for information on how to do so. We are excited for your first contribution!
Licensed under GNU General Public License v3.0.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the GNU General Public License v3.0 license, shall be licensed as above, without any additional terms or conditions.