Developer Resources

ZetaChain is the first ever L1 blockchain to enable fully interoperable smart contracts, or omnichain smart contracts, that connect all blockchains and bring the power of programmability to non-smart contract chains like Bitcoin and Dogecoin. We provide an unparalleled combination of security, simplicity, and flexibility for developers.

Built for an unparalleled developer experience

Deploy Once, Access All Chains

Manage a single omnichain contract for all chains, instead of one contract for each supported chain. Experience the simplicity of building on Ethereum with access to assets on any chain, even non-smart contract chains like Bitcoin.

Fewer Transactions, Fewer Fees

Complex contract logic on ZetaChain can orchestrate assets across all connected external chains through simple transfers and single transactions, minimizing total gas expenditure and slippage for users.

Safer, Better User Experience

Transaction logic occurs atomically in our smart contracts, resulting in lower slippage, reduced attack surface, and less susceptibility to race conditions. Experience truly one-step transactions (and fees), even when operating across chains.

The best DevX = The best UX

Omnichain Smart Contracts and Messaging give you a complete toolkit to easily build intuitive, traceable, single-step transactions so your users don’t get stuck or risk their funds.

// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;

import "@zetachain/protocol-contracts/contracts/zevm/SystemContract.sol";
import "@zetachain/protocol-contracts/contracts/zevm/interfaces/zContract.sol";

import "../shared/SwapHelperLib.sol";

contract ZetaSwap is zContract {
    SystemContract public immutable systemContract;

    constructor(address systemContractAddress) {
        systemContract = SystemContract(systemContractAddress);
    }

    modifier onlySystem() {
        require(msg.sender == address(systemContract), "Only system contract can call this function");
        _;
    }

    function onCrossChainCall(
        zContext calldata context,
        address zrc20,
        uint256 amount,
        bytes calldata message
    ) external virtual override onlySystem {
        (address targetZRC20, bytes32 receipient, uint256 minAmountOut) = abi.decode(
            message,
            (address, bytes32, uint256)
        );
        uint256 outputAmount = SwapHelperLib._doSwap(
            systemContract.wZetaContractAddress(),
            systemContract.uniswapv2FactoryAddress(),
            systemContract.uniswapv2Router02Address(),
            zrc20,
            amount,
            targetZRC20,
            minAmountOut
        );
        SwapHelperLib._doWithdrawal(targetZRC20, outputAmount, receipient);
    }
}

The easiest, most versatile cross-chain platform

To interact with the ZetaChain blockchain, implement 3 functions into your dApp to get intuitive, traceable, revertible behavior so your users don't get stuck or risk their funds.

Start using Connector API
/**
 * @dev Sending value and data cross-chain is as easy as calling connector.send(SendInput)
 */
function send(ZetaInterfaces.SendInput calldata input) external;

/**
 * @dev onZetaMessage is called when a cross-chain message reaches a contract
 */
function onZetaMessage(ZetaInterfaces.ZetaMessage calldata zetaMessage) external;

/**
 * @dev onZetaRevert is called when a cross-chain message reverts.
 * It's useful to rollback to the original state
 */
function onZetaRevert(ZetaInterfaces.ZetaRevert calldata zetaRevert) external

Omnichain Primitives

ZetaChain's omnichain primitives give developers the ability to deploy applications once and orchestrate assets on any connected chain from a single place of logic.

Omnichain toolkit

Omnichain Smart Contracts

Leverage the existing Ethereum smart contract ecosystem and build truly interoperable apps on ZetaChain as if everything were on a single chain.

Learn more

Cross-chain Messaging

Send arbitrary messages and move real value without the need for wrapping or locking assets, from any chain to any chain.

Learn more

Omnichain Accounts

ZetaChain’s novel TSS architecture lets users and contracts custody and manage assets from a single place, in a secure and decentralized manner.

Coming soon

Explorer

Fully explorable transactions: View and monitor ZetaChain internal transactions as well as transactions occurring from any chain to any chain.

Go to Explorer

How does ZetaChain compare?

As a blockchain and smart contract platform, ZetaChain provides a fully public, transparent, decentralized interoperability solution that supports both omnichain messaging and smart contracts. Developers on ZetaChain only need to implement their dApp logic, while ZetaChain handles the transaction of data and value across chains in a trust-minimized way.

Read whitepaper
ZetaChainCosmosPolkadotTHORChainBridges/MessagingGeneral Smart Contracts
Yes
Yes
Yes
No
No
Cross-chain Value Transfer
Yes
Yes
Yes
Yes
Yes
Cross-chain Message Passing
Yes
Yes
Yes
No
Yes
Chain-Agnostic
Yes
Only Cosmos/IBC Chains
No
Yes
Application-specific chain-pairs
Settlement
Immediate native settlement
Wrapped
Wrapped
Immediate native settlement
Wrapped, risk of redeem
Native Bitcoin Vault Management
Yes
No
No
Yes
Application-specific
Omnichain Smart Contracts
Yes
Only Cosmos/IBC Chains
Only Parachains
No
No

Risk Minimized

ZetaChain is a decentralized network built with TSS and PoS Tendermint Consensus with a minimal attack surface.

Unified Liquidity

No wrapped assets, centralized bridges, or increased interdependency risks. More freedom and cheaper transactions.

Infinite Compatibility

ZetaChain can support any existing or new blockchain, even non-smart contract chains like Bitcoin and Dogecoin.

Start Building

Kickstart your development with our growing examples library, with real contracts for real use cases.

Deploy an Omnichain dApp
Omnichain lending
Any-to-any payments
Omnichain NFTs
Cross-chain proof of ownership
Dogecoin smart contracts
Cross-chain DEX
Omnichain DAOs
Cross-chain stableswap
Omnichain lending
Any-to-any payments
Omnichain NFTs
Cross-chain proof of ownership
Dogecoin smart contracts
Cross-chain DEX
Omnichain DAOs
Cross-chain stableswap

Want to collaborate?

Share ideas and find collaborators to build omnichain dApps on ZetaChain in our Discord Development Zone. Our team is always ready to help out.

Latest

Check out the latest ZetaChain updates

Placeholder

ZetaHub introduces XP for dApps

The ZetaHub release introduces the first eligible ZetaChain apps for XP. Get started now!

Placeholder

January 2024: The Arrival of ZetaChain Mainnet Beta!

ZetaChain Mainnet Beta sees more than 900,000 users and 8 million transactions in the first week after launch. We’ll see you at ETH Denver very soon for ZetaChain’s Omnichain Day!

Placeholder

Announcing ZetaChain Mainnet Beta Launch

Today marks the launch of ZetaChain Mainnet Beta! Eligible users can claim ZETA in ZetaHub. All users can start earning XP in the first mainnet launch campaign!

Placeholder

ZetaChain Token Utility and Update on Rewards

The complete ZetaChain token utility documentation is live in ZetaDocs. 10% of the total ZETA token supply is reserved for community rewards.

Placeholder

The ZetaLabs Airdrop Pre-Claim

Airdrop claim eligibility is live in ZetaHub. Any web3 user can now enter Phase Z-1 to get ready for the day 1 launch of ZetaChain.

Placeholder

Preparing for ZetaChain 1.0

With a big year coming up, ZetaChain introduces the vision for 1.0 including roadmap, token utility, ZetaHub, state of ecosystem, and how to prepare for what’s next.

Placeholder

ZetaChain Wrapped 2023

ZetaChain’s mission is to serve as a platform for universal access, simplicity, and utility across any blockchain. We envision a world where users can access all of their assets and data across any chain without the need for bridges or risky wrapped tokens. Developers can deploy a single contract that spans all chains, even the Bitcoin network. Building off of ZetaChain Wrapped 2022, we made huge progress towards realizing this vision. As we approach the launch of ZetaChain Mainnet, let’s look back and reflect on our top achievements of the year!


Have questions?
Check out FAQ or chat with an expert.