Skip to content

iLayer-io/core-v1

Repository files navigation

iLayer V1

Solidity

Discord Twitter Website Docs

iLayer is a cross-chain intent-based solver hub primitive.

This repository contains the core smart contracts for iLayer V1.

Key Features

  • Swap tokens from one chain to the other in a cheap and fast way.
  • Bridge multiple tokens without needing to have gas on the destination chain.
  • Access DeFi protocols without using their complex UX with one click.
  • Easily build cross-chain interactions leveraging the iLayer infrastructure.

Security

Audit reports are available in the audits folder.

The codebase comes with full test coverage, including unit, integration and fuzzy tests.

Smart contracts have been tested with the following automated tools:

If you find bugs, please report them to info@ilayer.io. You may be eligible for our bug bounty program that covers the deployed smart contracts.

Documentation

You can read more about how it works on our documentation website or on the official whitepaper.

Deployment

The process is as follows.

Step 1: Deploy contracts

Run the DeployEVM script to deploy contracts (Router, OrderHub, OrderSpoke) on the selected EVM-compatible chain. Contracts are deployed using Create3 and verified on Etherscan.

forge script script/DeployEVM.s.sol --rpc-url "$RPC_URL" --broadcast --slow --private-key "$OWNER_PRIVATE_KEY" --sender "$OWNER" --verify --verifier etherscan --etherscan-api-key "$ETHERSCAN_KEY"

Step 2: Setup the Router

LayerZero

Run the SetupLayerZeroEVM script to set the chainID -> chainEid mapping.

forge script script/SetupLayerZeroEVM.s.sol --rpc-url "$RPC_URL" --broadcast --slow --private-key "$OWNER_PRIVATE_KEY" --sender "$OWNER"

Axelar

TBD

Step 3: Setup the OrderHub and OrderSpoke

We need to whitelist the Hub and Spoke for each chain supported by running setSpokeAddress and setHubAddress.

forge script script/SetupHubSpoke.s.sol --rpc-url "$RPC_URL" --broadcast --slow --private-key "$OWNER_PRIVATE_KEY" --sender "$OWNER"

Licensing

The main license for the iLayer contracts is the Business Source License 1.1 (BUSL-1.1), see LICENSE file to learn more. The Solidity files licensed under the BUSL-1.1 have appropriate SPDX headers.

Disclaimer

This application is provided "as is" and "with all faults." We as developers makes no representations or warranties of any kind concerning the safety, suitability, lack of viruses, inaccuracies, typographical errors, or other harmful components of this software. There are inherent dangers in the use of any software, and you are solely responsible for determining whether this software product is compatible with your equipment and other software installed on your equipment. You are also solely responsible for the protection of your equipment and backup of your data, and THE PROVIDER will not be liable for any damages you may suffer in connection with using, modifying, or distributing this software product.

About

Cross-chain interactions made easy

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •