I would like to know if based on your experience, the following steps are correct in order a developer to develop a DApp from the start to the end.


  1. Create an Externally Owned Account (EOA)
  2. Receive the account address and the private key
  3. Fund account with real or test Ether
  4. Write Smart Contract
  5. Complile Smart Contract
  6. Deploy Smart Contract's bytecode
  7. Approve transaction (sign transaction with private key)
  8. Smart contract's address on Ethereum received
  9. Setup DApp UI (e.g., HTML, CSS, JS, etc.)
  10. Plug Web3.js library
  11. Include Application Binary Interface (ABI)
  12. Establish interaction with blockchain (for example check if an address is a valid Ethereum address)
  13. Establish interaction with the smart contract (for example call a function of the smart contract)
  14. DAapp is configured and the process ends

Please, any steps and ideas are welcomed :) I need your experience

1 Answer 1


These steps are incorrect.

Usually the actual development happens using unit tests, integration tests and Ganache, no real Ethereum accounts involved.

For more information about professional Ethereum development frameworks, check e.g. Hardhat.

  • Thanks for the answer. However, in case the developer wants to make a DApp live in the Ethereum mainnet, are the aforementioned steps correct? Commented Apr 10, 2021 at 13:40
  • No, because you do not do development on mainnet. Commented Apr 10, 2021 at 13:44
  • 1
    That's an opinion. It is a bad practice to do development on mainnet because you have to pay real fees and you can lose real assets, but you CAN do it.
    – Undead8
    Commented Apr 10, 2021 at 14:01
  • But I guess that the aforementioned process steps can be performed on testnet, playing around with test Ether. Right? Commented Apr 10, 2021 at 14:03
  • 1
    Yes the steps could be performed on a testnet. But on a serious Dapp development, you would also use unit tests even before deploying on a testnet (using truffle and ganache, for instance). Unit tests are kind of automatic tests that are performed locally on your Dapp to make sure that it works as intended.
    – Undead8
    Commented Apr 10, 2021 at 14:05

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.