A CLI swiss army knife for Ethereum developers
eth-cli
allows you to fetch data from the blockchain, start an interactive REPL connected to some node, call methods on deployed contracts, and more, all at the comfort of your command line. Checkout the examples below for more information or check the full list of commands.
Install it globally:
npm install -g eth-cli
You can also try it with npx
:
$ npx eth-cli repl --mainnet erc721@0x06012c8cf97bead5deae237070f9587f8e7a266d
> erc721.methods.name().call()
'CryptoKitties'
Check this screencast to see it in action.
There are a lot of things that you can do with eth-cli
, and we keep adding more. These are some of our favorites:
Use commands like block:number
, tx:get
and address:balance
to get information from the blockchain.
eth-cli
supports some basic autocompletion, generated with completely
.
The completion directory has a bash completion script (eth-completion.bash
) and a zsh completion script
(_eth
). If you use bash, download the script and source it in your bashrc. If you use zsh, download the script and put
it in some directory in your fpath
.
If you want to have some helper variables or functions in your REPL, you can create an init file that will be loaded
every time you use eth repl
. Just create a file called .eth_cli_repl_init.js
in your home directory. For example, if
you create it with some content like:
module.exports = function(context) {
context.toWei = x => context.web3.utils.toWei(x.toString())
context.fromWei = x => context.web3.utils.fromWei(x.toString())
}
you will have toWei
and fromWei
as global functions in the REPL.
- Solhint: A linter for the Solidity language.
eth-cli is free to use and open-sourced. If you value our effort and feel like helping us to keep pushing this tool forward, you can send us a small donation. We'll highly appreciate it :)
Table of Contents generated with DocToc