mara-chain

module
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2022 License: LGPL-3.0

README

Mara chain

Mara chain is a scalable and interoperable Ethereum library, built on Proof-of-Stake with fast finality using the Cosmos SDK, which runs on top of Tendermint Core consensus engine.

Note: Requires Go 1.18+

Installation

If you don't have Go installed or configured on your PC, the command make install command will return an error /bin/sh: go: command not found.

Kindly follow the following steps to install and configure your PC to run the Mara Chain locally.

Step 1

Download and install Go quickly with the steps described here.

Next, run go version to confirm the installation succeeded.

Step 2

Run the following command to install dependencies:

make install

If you haven't installed jq already or encounter jq not found follow the guide to install jq.

Step 3

Navigate to the Mara Chain project directory using the following command.

cd mara-chain

Verify everything went well by running the following command.

which marad

You will get the error marad not found. This is because you need to set $GOBIN and add it to the path where marad would be located. Let's fix that by running the following command:

export PATH=$PATH:$(go env GOPATH)/bin

The scripts in the rest of this document use $GOPATH instead of $(go env GOPATH) for brevity. To make the scripts run as written if you have not set GOPATH, you can substitute $HOME/go in those commands or else run:

export GOPATH=$(go env GOPATH)

Check here to learn more about GOPATH.

Step 4

To start up the Mara chain, run the following command:

./init.sh

Check out the latest release.

Quick Start

To learn how the Mara chain works from a high-level perspective, go to the Introduction section from the documentation. You can also check the instructions to Run a Node.

For an example of how the Mara Chain can be used on any Cosmos-SDK chain, please refer to Evmos.

Contributing

Looking for an excellent place to start contributing? Check out some good first issues.

Directories

Path Synopsis
app
ante
Package ante defines the SDK auth module's AnteHandler as well as an internal AnteHandler for an Ethereum transaction (i.e MsgEthereumTx).
Package ante defines the SDK auth module's AnteHandler as well as an internal AnteHandler for an Ethereum transaction (i.e MsgEthereumTx).
docs/statik
Package statik contains static assets.
Package statik contains static assets.
cmd
crypto
hd
ethereum
rpc
Package rpc contains RPC handler methods and utilities to start Ethermint's Web3-compatibly JSON-RPC server.
Package rpc contains RPC handler methods and utilities to start Ethermint's Web3-compatibly JSON-RPC server.
rpc
network
Package network implements and exposes a fully operational in-process Tendermint test network that consists of at least one or potentially many validators.
Package network implements and exposes a fully operational in-process Tendermint test network that consists of at least one or potentially many validators.
x
evm
feemarket/types
Package types is a reverse proxy.
Package types is a reverse proxy.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL