Is the local test node instance here same as the one in Ethereum and synchronizes all blocks from the public test chain? Or it does it start from the genesis block and contain only my data?

Is there a need to set up a private network if I don't want to make any changes to genesis block but just want to run a dapp in sandbox environment and host on a single node?

I did read eosio documentation but I don't have clarity.

3 Answers 3


If you just want to run a dapp in sandbox environment you can run local EOS node (nodeos). It will contain only your data and will not sync all blocks from testchain.

You can start by downloading binaries of EOSIO and EOSIO.CDT.

and then simply starting local node through nodeos.

By default local node will run on


There are different test nets for different purposes (from AlohaEOS):


CryptoKylin is a developer friendly EOS testnet with the mainnet token snapshot partially applied (accounts created but not all EOS transferred). The eosio account is resigned like mainnet, so changes take approval from 15 BPs.


Jungle is a developer friendly EOS testnet with the mainnet token snapshot fully applied. A difference is the eosio account is not resigned like mainnet and can be used by the admin to make any change.

You can also check the developer portal for more information & links.

You shouldn't need a private network for most app development/testing purposes.

  • But testnets may clean my data after a certain time. What could I do to avoid data loss?
    – coder
    Jan 27, 2020 at 5:42

Running a local nodeos instance is effectively a private network that exists only on your PC. In EOSIO it starts from complete scratch, so there are no user accounts or tokens present. E.g. to test out token transfers you would first need to build and deploy the EOSIO system-wide token contract.

There are several options for testing your smart contract and depends on which stage you are in your EOSIO development and level of expertise:

  • Just starting out with EOSIO: use https://www.eosstudio.io/ (friendly UI, takes the headache out of deploying EOS system contracts and has integrated block explorer so you can see results of your actions) or run your own local nodeos (but you'd need to first deploy all the EOSIO system contracts that your smart contract depends on)
  • Smart contract unit testing: Block.one's Boost and Native tester can be used here
  • Need to write many test cases: once you start writing more complex smart contracts then the number of tests you need to do and the complexity of those test cases begins to get harder to manage. Then you can consider some dedicated JS test frameworks like Hydra or EOSLime
  • Pre-deployment testing: here devs would typically deploy their smart contract to one of the test nets (Kylin or Jungle as mentioned by Don P). For larger teams they may decide to maintain their own private test net that is shared amongst their developers and has all the contracts in the right state
  • Deployment: at this stage you deploy your tested smart contract (that has hopefully gone through most of the prior testing steps) to a live main network

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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