Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add overview and tech overview - eureka #874

Open
wants to merge 1 commit into
base: staging
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
90 changes: 90 additions & 0 deletions docs/eureka/eureka-overview.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
---
title: "Overview"
id: eureka-overview
description: "An overview of IBC Eureka for developers"
---

# IBC Eureka: Fast, Cheap, and Seamless Interoperability between Cosmos and Ethereum

## What is IBC Eureka?

IBC Eureka is the canonical implementation of IBC v2 that enables seamless interoperability between Cosmos and Ethereum ecosystem. As a subset of the proven Inter-Blockchain Communication (IBC) protocol, Eureka extends the reach of 115+ Cosmos chains to Ethereum (Q1 2025) with support for Layer 2 networks such as Base and Arbitrum or Solana to be added soon.

<CardGroup cols={2}>
<Card title="Connect Your Chain" icon="ethereum">
Connect your Cosmos chain to Ethereum and other EVM chains with minimal cost and battle-tested security.
</Card>
<Card title="Instant Compatibility" icon="puzzle">
If your chain already uses IBC, is connected to the Cosmos Hub and has been onboarded to the Skip API, you can immediately connect to Ethereum through Eureka with no new dependencies.
</Card>
</CardGroup>

## Integration Options

There are multiple ways to integrate with Eureka, depending on your requirements:

### 1. Chain-to-Eureka Integration

If you're running a Cosmos-based blockchain, you can connect directly to Eureka through the Cosmos Hub:

- Requires an IBC connection to the Cosmos Hub and onboarding to the Skip API
- No chain upgrade needed if you're already using IBC
- Enables your users to transfer assets to and from Ethereum

### 2. Frontend-to-Eureka Integration

For application developers looking to enable cross-chain functionality in their applications:

- Leverage the Skip Widget for a simplified integration
- Integrate with 50+ wallets and frontends on day one
- Enable seamless asset transfers without handling complex relayer infrastructure

### 3. User-to-Eureka Use

For end-users who need to use the interoperability functionality of Eureka:

- Implement the Skip Go widget in your application
- Provide one-click experience for users to transfer assets
- Access all IBC-connected chains and Ethereum from a single integration

### 4. Frontend/Custodian-to-Eureka

For custodial applications and exchanges:

- Implement direct API access to Eureka's functionality
- Enable high-volume, automated cross-chain operations

## Getting Started

To start using Eureka, you have several options:

<Steps>
<Step title="Understand the Tech">
Read the [Technical Overview](/eureka/eureka-tech-overview) to see how Eureka works.
</Step>
<Step title="Explore the Devnet">
Follow our [Devnet Testing Guide](/eureka/devnet-testing-guide) to test Eureka's functionality using our CLI tool.
</Step>
<Step title="Integrate with Skip Go">
If you're building a frontend application, consider using the [Skip Go API](/client/skip-api) for a simplified integration.
</Step>
<Step title="Connect Your Chain">
If you're running a Cosmos chain, consider setting up an IBC connection to the Cosmos Hub and reach out to our team below for configuration assistance.
</Step>
</Steps>

## Coming Soon

- **Testnet Launch**: March, 2025
- **Ethereum Mainnet Integration**: End of Q1 2025
- **Additional EVM Chain Support**: Base, Arbitrum, and Optimism in Q2 2025

## Support and Resources

Need help with your Eureka integration? Our team is ready to assist:

- Join our [Discord](https://discord.gg/cosmos) and find the support channel
- Contact us directly: [@OllieGilbey](https://t.me/OllieGilbey) or [@NotJeremyLiu](https://t.me/NotJeremyLiu) on Telegram
- Email: [email protected]

For technical specifications, visit the [IBC v2 Specification](https://github.com/cosmos/ibc/blob/main/spec/eureka/README.md).
87 changes: 87 additions & 0 deletions docs/eureka/eureka-tech-overview.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
title: "Technical Overview"
id: eureka-technical
description: "Technical details of how IBC Eureka works"
---

## Native IBC Security Model

Eureka implements the full IBC light client security model, providing trust-minimized verification of cross-chain transactions:

- **Light Client Verification**: Each chain runs a light client of the other chain, enabling cryptographic verification of state transitions
- **No Multisig Dependencies**: Unlike many bridge solutions, Eureka doesn't rely on trusted validator sets or multisigs for security
- **Permissionless Access**: Anyone can connect to the IBC network and Ethereum, as long as your chain has an IBC implementation, classic or v2
- **Minimal Infrastructure Overhead, no ongoing costs**: Relaying, proving and routing between the Cosmos Hub and Ethereum onto your chain is handled by the smart relayer, paid for by end users. Simply maintain an IBC classic connection to the Cosmos Hub

## Performance and Cost Efficiency

```mermaid
graph LR
A[Ethereum] --> |~$5 Fast, ~$2 Standard| B[Cosmos Hub]
B --> |IBC Eureka| C[Your Cosmos Chain]
D[Layer 2s] --> |~$1-2| B
```

- **Optimized Gas Consumption**: Transfer from Ethereum to your chain, via Cosmos Hub for approximately \$5 using fast mode and less than \$2 for standard transfers
- **Layer 2 Efficiency**: Transfers from Layer 2s (Arbitrum, Optimism, Base) cost approximately $1-2
- **Fast Finality**: Assets arrive on destination chains in seconds, regardless of source chain finality times

## Native Asset Representation

- **Bank Module Integration**: Received assets live directly in the bank module as native tokens
- **No Wrapped Tokens**: Assets are not wrapped or suffixed with bridge-specific identifiers (e.g., no ETH.axl)
- **ERC20 Compatibility**: Assets can be easily represented as ERC20s in the future without conversion complexity

## How Eureka Works

Eureka connects blockchains through a combination of:

1. **IBC Protocol v2**: The standardized communication layer that defines packet formats and verification logic
2. **Solidity Implementation**: Smart contracts deployed on Ethereum and EVM chains that implement the IBC protocol (Other smart contract chains to come)
3. **Light Clients**: Each chain runs a light client of the other chain to verify state transitions
4. **Relayers**: IBC v2 uses relayers to send messages between chains. We facilitate and operate the relaying infrastructure for Eureka for you.

<Note>
The IBC protocol guarantees that a packet delivered on the destination chain
was definitely sent from the source chain, using cryptographic verification
rather than trusted third parties.
</Note>

## Architecture Overview

```mermaid
flowchart TD
subgraph "Ethereum Network"
E[Ethereum]
ICS26[ICS26 Contract]
ICS20[ICS20 Transfer Contract]
LC1[Tendermint Light Client]
end

subgraph "Cosmos Hub"
CH[Cosmos Hub]
LC2[Ethereum Light Client]
IBCHandler[IBC Handler]
Transfer[Transfer Module]
end

subgraph "Your Cosmos Chain"
YC[Your Chain]
IBCHandler2[IBC Handler]
Transfer2[Transfer Module]
end

E <--> ICS26
ICS26 <--> ICS20
ICS26 <--> LC1

CH <--> IBCHandler
IBCHandler <--> LC2
IBCHandler <--> Transfer

YC <--> IBCHandler2
IBCHandler2 <--> Transfer2

Transfer <--> |IBC Connection| Transfer2
LC1 <--> |Relayer| LC2
```
2 changes: 2 additions & 0 deletions docs/mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@
{
"group": "Eureka",
"pages": [
"eureka/eureka-overview",
"eureka/eureka-tech-overview",
"eureka/devnet-testing-guide"
]
},
Expand Down