Harmony Smart Contract Development vs Ethereum

Hi all, I am coming up to speed with Smart Contract Development using the Harmony system. I understand it has the EVM which allows me to use the same code for Smart Contract Development.

I deployed a simple contract to the Harmony using the Harmony Remix platform, I realized I could not tell the difference between an Externally Owned Account(Personal Wallet) vs Smart Contract am I missing something, or is this on the roadmap to implement.

Additionally in the Harmony remix platform, I am unable to use the Javascript Environment to deploy a smart contract to memory would this also be something coming to the platform.

1 Like

I can’t speak to what it fully supports but I can share you my development process.

I use truffle with ganache-cli (ethereum) for development.
Then I deploy to harmony-testnet/mainnet via truffle when I need to.

Generally, everything that can be deployed to ethereum will work on harmony. I used to deploy to ethereum-testnet for testing…but now I go straight to harmony-testnet.

You can see some of my configs on github / hashmesan / harmony-totp


I think remix replaces truffle/hardhat. It’s just a webapp that runs the same logic via the interface. Not sure what you mean by in memory. Aren’t they always hosted on the Blockchain in the end?

Not sure if I understood correctly, but when you deploy a contract you can call your functions on it, unlike a external wallet. If you are the owner you may have access to different functions that only the owner can call.

making known that i’m a beginner
but last year i was developing on ETH chain
this year on Harmony , i found myself very impressed: 100 times faster and the fees , whoa !


I came here hoping to find advise with a truffle harmony testnet re-deploy issue. Coming from BSC, getting a truffle Harmony environment was awkward.

"Migrations" -- not implemented -- Reason given: Custom error (could not decode)

I will try Remix, but I definitely would rather cli.

chainid: 1666900000

Testnet should be up and running again around Monday but Devnet is the one to use going forward.

1 Like

Thank-you, working nicely.

added devnet to the ./truffle-conf.js

     devnet: {
      provider: () => {
        return new PrivateKeyProvider(process.env.DEVNET_PRIVATE_KEY, devnet_url, networkId.Devnet)
      network_id: networkId.Devnet