Skip to main content

62 docs tagged with "EVM"

Ethereum Virtual Machine.

View all tags

About How-to Guides

Explore the how-to guides for IOTA Smart Contracts, offering step-by-step instructions on various topics and functionalities.

Allow

How to allow native assets and base token

Calling a Smart Contract

Smart contracts can be invoked through their entry points, from outside via a request, or from inside via a call.

Compatible Tools

Existing EVM tooling is compatible and can be used directly with an IOTA Smart Contracts chain running EVM. You can configure hardhat, metamask, remix, Ether.js and Web3.js among others.

Consensus

IOTA Smart Contracts consensus is how Layer 2 validators agree to change the chain state in the same way.

Core Contracts

There currently are 6 core smart contracts that are always deployed on each chain, root, _default, accounts, blob, blocklog, and governance.

Create ERC721 NFTs

Create and deploy a Solidity smart contract to mint NFTs using the ERC721 standard.

Cross-chain NFT Marketplace: Part I

This is the first part of a three-part series that will guide you as you build a cross-chain NFT marketplace using IOTA Smart Contracts (ISC). The marketplace will allow users to trade NFTs on the IOTA EVM Testnet and BNB Testnet.

Cross-chain NFT Marketplace: Part II

This is the second part of a three-part series that will guide you as you build a cross-chain NFT marketplace using IOTA EVM Smart Contracts. The marketplace will allow users to trade NFTs on the IOTA EVM Testnet and BNB Testnet.

DeFi Lend Borrow - Part II

This is a comprehensive guide to the DeFi Lend Borrow DApp, a decentralized application built using React and the ethers library. The DApp allows users to lend and borrow cryptocurrency assets on IOTA EVM Testnet.

DeFi Lend Borrow : Solidity Contracts

DeFi Lend Borrow is a decentralized finance (DeFi) application that enables users to lend and borrow assets on the IOTA EVM testnet. The project is built using Solidity and Hardhat, with the core functionality provided by smart contracts.

Deploy a Smart Contract

Learn how to deploy smart contracts to IOTA EVM Testnet using popular tools like Remix and Hardhat.

First Example

Example of a _Solo_ test. It deploys a new chain and invokes some view calls.

Get Allowance

How to get the allowance of native assets and base token

Get Randomness on L2

You can use the ISC Magic Contract in EVM contracts to access ISC functionality, such as randomness.

How Accounts Work

IOTA Smart Contracts chains keep a ledger of on-chain account balances. On-chain accounts are identified by an AgentID.

Introduction

The current release of IOTA Smart Contracts also has experimental support for EVM/Solidity, providing limited compatibility with existing smart contracts and tooling from other EVM based chains like Ethereum.

Sandbox Interface

Smart Contracts can only interact with the world by using the Sandbox interface which provides limited and deterministic access to the state through a key/value storage abstraction.

Smart Contracts

Smart contracts are applications you can trust that run on a distributed network with multiple validators all executing and validating the same code.

State Manager

State manager is Wasp component, which is responsible for keeping the store up to date.

State, Transitions, and State Anchoring

The state of the chain consists of balances of native IOTA digital assets and a collection of key/value pairs which represents use case-specific data stored in the chain by its smart contracts outside the UTXO ledger.

Subgraphs

Learn about the role of subgraphs in smart contracts and how they can provide indexed blockchain data to your smart contracts.

Testing Smart Contracts

Learn how to test smart contracts before deploying them on public networks to avoid vulnerabilities and ensure functionality aligns with requirements using unit, and integration testing, alongside frameworks and testing with the IOTA Sandbox and the EVM Testnet.

The evm Contract

The evm core contract provides the necessary infrastructure to accept Ethereum transactions and execute EVM code.

The L2 Ledger

Smart contracts can exchange assets between themselves on the same chain and between different chains, as well as with addresses on the L1 ledger.

Validators

Each chain is run by a network of validator nodes which run a consensus on the chain state update.