Skip to content

ctzurcanu/demos

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The EVM for the Inter-Chain

For tech support you can ask a question on

If you want to build your hackathon project on our chains, let us know: in case you need additional features or fixes for the chains or smart contracts, we might be able to solve it during the hackathon if you tell us early.

Mythos, Ethos and Logos are Cosmos-EVM cutting-edge chains based on Ethermint (and therefore Evmos-compatible) that host live, publicly verifiable prototypes of our work at The Laurel Project https://laurel.provable.dev.

We showcase innovative features that Cosmos-EVM chains can have, some of which have been/will be proposed to Evmos. This is the future of Cosmos-EVM and you can help us build it.

All this effort is volunteer effort. To support these EVM inter-chain projects on Evmos, you can join as a volunteer or give 100% of your staking reward to our validator: https://evolve.provable.dev/.

Note: the Mythos, Logos, Ethos tokens do not have value outside of transaction gas. Mythos, Logos, Ethos might be restarted from scratch at a later time, (1 month after the hackathon).

Interactive Workshop

Prerequsite

  • Install Metamask (or another EVM wallet) in your browser (ideally Chrome): https://metamask.io/
  • Fill in this form with your Ethereum address, to receive tokens on the Mythos, Ethos, Logos chains: https://forms.gle/3sGGBEPzqLQM7Zp7A
  • Add Mythos, Logos, Ethos to your Metamask:

Mythos Metamask settings:

  • Name: mythos.provable.dev
  • RPC URL: https://mythos-evm.provable.dev
  • ChainID: 7001
  • Currency: aMYT
  • Block explorer: https://explorer-mythos.provable.dev/

Logos Metamask settings:

  • Name: logos.provable.dev
  • RPC URL: https://logos-evm.provable.dev
  • ChainID: 7002
  • Currency: aLYT
  • Block explorer: https://explorer-logos.provable.dev

Ethos Metamask settings:

  • Name: ethos.provable.dev
  • RPC URL: https://ethos-evm.provable.dev
  • ChainID: 7003
  • Currency: aRYT
  • Block explorer: https://explorer-ethos.provable.dev

Setup

After you have your tokens, go the HackAtomWorkshopSetup smart contract & dApp: [TODO marks factory] and click the Setup button. This will trigger an EVM transaction that you will need to sign with Metamask.

This transaction will: -> send you some inter-chain-powered ERC20 tokens -> create an interchain account for your Ethereum address. This is a Cosmos SDK message sent through our Quasar feature, that connects Cosmos to the EVM and back.

Multi-Chain Simple Storage

Deploy a multi-chain SimpleStorage smart contract, modify the state on all chains in a single transaction.

Smart contract, dApp code: https://github.com/the-laurel/demos/tree/main/multi-chain-simple-storage.

Inter-Chain ERC20

Inter-Chain ERC20 (ICERC20) smart contract is at address [Ethereum address]. See contract code & ABI at https://github.com/the-laurel/demos/tree/main/IcERC20. The dApp to interact with it is at [TODO marks factory]

You can: -> move your ICERC20 tokens from Mythos to your account (same Ethereum address) on another chain (Logos, Ethos) -> transfer your ICERC20 tokens from Mythos to another account, on another chain (Logos, Ethos)

Learn more:

The Development Process

  1. know well your intent and the limitations of the EVM chain
  2. develop the smart contracts in Solidity with Remix
  3. test the ABI in Remix
  4. produce a simple dApp to test independently from Remix
  5. make the dApp intuitive, secure, and bug-free
  6. deploy the contracts on the pubic chain
  7. deploy the dApp on IPFS
  8. profit

We simplified the process:

  1. know well your intent and the limitations of the EVM chain
  2. develop the smart contracts in Solidity with Remix or in our taylor IDE
  3. export the ABI to obtain a simple dApp
  4. make the dApp intuitive, secure, and bug-free in the same IDE
  5. press a button and it gets saved to IPFS and QR created for mobile share
  6. deploy the contracts too on the public chain
  7. profit

For todays lessons, you will receive stubs of code from IPFS. You should be able to further develop the code to work in the Inter-Chain environment.

Plus: after you develop a dApp, you will be able to share it with the others.

Transaction Replay

needs to:

  • be signed by the same account
  • the contract has to have the same address
  • with the same nonce
  • on each chain that is played on

We have created 2 types of trustless bridges that use transaction replay: 1 can be used between 2 chains and 1 can be used on 3 or more chains and it uses a router to create a ring of chains. The router selects on wich chains the transaction should be replayed.

Relevant Infrastructure

The Necessay Precompiles

EvmInterpreter Precompile

InterTx Precompile

AbstractAccount Precompile

CosmosSdk Precompile

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Solidity 100.0%