3

I am trying to set up a local blockchain and started to read about Puppeth to manage the blockchain and also read about Ganache (this one I already tested a bunch of stuff), but never heard about a compassion of both.

What is the main difference between them, talking about the CLIs only?

3

TL;DR - Ganache and Puppeth are both tools to spin up your own blockchain. Ganache is meant to be used as a testbed where transactions can be created and contracts can be deployed freely and instantaneously. Puppeth is similar in that it has the ability to do this as well. Puppeth has the advantage of being more configurable and acting more similar to a live network. This is because Puppeth allows for customizations such as choosing a custom consensus algorithm, viewing the TxPool (something that Ganache cannot do, for now), communicating between nodes, and more. In summary, each have their own place in the development flow. Puppeth acts more like a true blockchain network whereas Ganache acts more like a single instance of a blockchain node.

I would consider using Ganache when testing transactions and contracts. I would consider using Puppeth when testing the network layer (and anything on top of this layer).



Ganache allows you to create a private Ethereum blockchain for you to run tests, execute commands, and inspect state while controlling how the chain operates. It gives you the ability to perform all actions you would on the main chain without the cost. Many developers use this to test their smart contracts during development. It provides convenient tools such as advanced mining controls and a built-in block explorer.

Puppeth is a tool built into Geth that allows you to create a private Ethereum blockchain that closely mimics one of the existing networks. You can use the CLI to configure exact parameters for your network without having to manually create an entire new blockchain from scratch. You can configure settings such as the consensus mechanism, maxPeers, block times, and more.

Some Puppeth features that are noted on its official release blog are:

  • Pure Go ethash
  • Router CPU compatibility
  • Plugable consensus engines
  • Clique PoA (proof-of authority) protocol
  • A Puppeth network manager
  • 64 bit gas calculations
| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.