Local Development Environment

Let's set up the local environment for smart contract application development.

Local environment image

For local development, this tutorial uses the following environment.

If you prefer other development tools, please use those as you find appropriate.

Browser Solidity


In this tutorial we will assume contracts will be implemented in Browser Solidity.

Execute the following command to download browser-solidity to any folder locally.

(You may use this IDE directly from the Browser Solidity website, but it will not be possible to access the Deploy server.)

$ git clone -b gh-pages https://github.com/ethereum/browser-solidity.git

To clone files,

$ browser-solidity/index.html

You can start development after you opening the above file in a browser.

Ether Block Explorer

Prepare BlockExplorer to check the state of blocks on Ethereum.

  • About the Windows environment

    As of this writing, this does not seem to work in Windows environment. Please create a virtual environment with Vagrant etc. for BlockExplorer.

Follow the procedure below to launch EtherBlockExplorer.

$ git clone https://github.com/etherparty/explorer
$ cd ./explorer
$ npm install bower
$ npm start

Reference: https://github.com/etherparty/explorer

With PortForward setting configured to Deploy node,


You can check the status of blocks by accessing the above link.

  • If the following error message appears.
    geth -rpc -rpccorsdomain "http://localhost:8000"

    It is highly likely that PortForward setting has not been configured properly.

    Please check the setting.

  • When accessing from somewhere other than localhost

    By default, EtherBlockExplorer only allows access on localhost.

    To access from other places, edit explorer/package.json and restart it.

    "start":"http-server ./app -a localhost -r 8000 -c-1"

    If "localhost" => "" is set for the address part, it will allow access from anywhere.

    However, please take responsibility for the risk associated with widening the access range.

results matching ""

    No results matching ""