Smart contracts are the backbone of your hybrid dApp on TAC. This guide will help you understand how to deploy and interact with Solidity contracts on TAC’s EVM Layer.

TAC offers full EVM compatibility, allowing you to deploy your existing Solidity contracts without modifications.

Understanding Smart Contracts on TAC

TAC’s smart contract environment consists of two key components:

  • TAC EVM Layer: A fully EVM-compatible Layer 1 blockchain based on Cosmos SDK and Ethermint where your Solidity contracts are deployed.
  • Proxy Contracts: Special contracts that receive and process messages from TON, acting as bridges between TON users and your EVM smart contracts.

Key Benefits for EVM Developers

Full EVM Compatibility

Deploy your existing Solidity contracts without modifications. All EVM opcodes and features are supported.

Familiar Tooling

Use standard Ethereum development tools like Hardhat, Truffle, Remix, and Ethers.js.

TON Integration

Through proxy contracts, your EVM smart contracts can interact with TON users and assets.

Security Model

Benefit from Tendermint consensus and additional security through Babylon Bitcoin staking.

Development Workflow

When developing smart contracts for TAC, you’ll follow this general workflow:

1

Write Solidity Contracts

Develop your smart contracts using Solidity, just as you would for Ethereum.

2

Test Locally

Use standard testing frameworks like Hardhat or Truffle to test your contracts locally.

3

Deploy to TAC EVM

Deploy your contracts to the TAC EVM Layer using familiar deployment scripts.

4

Create Proxy Contracts

Build proxy contracts that enable TON users to interact with your EVM contracts.

5

Connect Frontend

Use the TAC SDK to connect your frontend to both your EVM contracts and TON wallets.

Smart Contract Requirements

For optimal compatibility with the TON Adapter, your smart contracts should:

  • Follow standard EVM security best practices
  • Consider crosschain message timing in your contract logic
  • Implement proper error handling for crosschain operations

Proxy Contract Development

A critical part of developing for TAC is creating proxy contracts that enable communication between TON and your EVM contracts. Proxy contracts:

  • Receive messages from TON users
  • Process and validate input data
  • Call your EVM contracts with the appropriate parameters
  • Handle token transfers between chains
  • Return results back to TON

Ready to Dive Deeper?

Now that you understand the basics of smart contract development on TAC, you’re ready to deploy your first contract or learn how to build custom proxy contracts: