Warning: this tool is experimental. It should work for GNU/Linux and hopefully on Mac OS.
ethnode
is a zero configuration tool to run a local Ethereum node. It supports both Parity and Geth.
Try it out:
npm install -g ethnode
ethnode
ethnode
automatically:
- downloads the latest stable version of
geth
orparity
- configures
geth
orparity
to run in a single node network using the clique (Geth) or InstantSeal (Parity) consensus engine (transactions are processed instantly) - provides 10 unlocked accounts with 100ETH each
- enables all RPC endpoints (personal, db, eth, net, web3, debug and more)
- allows CORS from any domain (so you can use it with remix)
By default ethnode
runs geth
. If you want to run parity
type ethnode parity
.
Every time you run ethnode
, it creates a new temporary directory to store the data. If you want to persist the data across
ethnode --workdir=mydata
Sometimes you want to allocate Ether to some specific addresses (maybe some other accounts you have on MetaMask). This is an alternative approach to import a private key to your MetaMask extension.
ethnode --allocate=0xad7b5e515e557b2dc4d0625d206394b502412003,0xecdd5b467e38731bfad4bd75faa45c7d58e41b49
Parity has a nice feature to run it as a private development chain (aka test RPC).
While testing it, I run into some problems, like:
- address management
- outdated genesis file
- the default configuration (
--config dev
) doesn't:- open up CORS
- unlock the test keys
More or less for the same reasons mentioned above.
Ganache sometimes is not enough.