Migrate existing dApps

Here you will find some tips and tricks on how to migrate existing dApps to Botanix

Developing a new dApp on Botanix is going to feel very familiar for those who are used to developing dApps but migrating requires some more work than a simple copy-paste job!

In general, migrating the existing smart contracts is rather easy. One might face more issues when migrating the front end, back end or database. Some things to take into account are:

  • Developers may encounter issues with other infrastructure requirements see here

  • Look for open source projects with low dependencies

  • Chain independent

    • = not depending on any specific property of a chain

    • For example: project doesn't depend on PoS on ETH

  • Do not require cloud provisioned nodes

    • Many ETH projects use Infura but that doesn't really exist outside of ETH.

    • This can make it tough to port backends and dApps over.

  • Has a active contributors / issues

Differences in block and network properties

Developers might encounter logic errors stemming from variations in block and network properties.

Differences in block properties

  • Botanix does not use total_difficulty, nonce, withdrawals, omners, mix_hash or parent_beacon_block_root (EIP-4788)

  • Botanix stores consensus specific material in the extra data portion

    • Extra data larger than what Ethereum consensus allows

Differences in Network properties

  • Botanix has 1 block finality

  • Botanix (v1) has ~ 1 min block times

Last updated