Skip to content

Commit

Permalink
Merge branch 'main' into drew/improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
drewstone authored Nov 1, 2024
2 parents 0cb4e20 + 1317509 commit adceb41
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 22 deletions.
9 changes: 1 addition & 8 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,6 @@ _Provide a detailed description of proposed changes._

### Reference issue to close (if applicable)

_Specify any issues that can be closed from these changes (e.g. Closes #233)._
_Specify any issues that can be closed from these changes (e.g. `Closes #233`)._

- Closes

---

### Code Checklist

- [ ] I have tested that prove my changes are working as intended
- [ ] I have added necessary documentation (if appropriate)
25 changes: 14 additions & 11 deletions pages/developers/eigenlayer-avs.mdx
Original file line number Diff line number Diff line change
@@ -1,24 +1,27 @@
import GithubFileReaderDisplay from "../../components/GithubFileReaderDisplay";
---
title: Build an EigenLayer AVS
---

# Building EVM Event Listeners for Eigenlayer AVS
import GithubFileReaderDisplay from "/components/GithubFileReaderDisplay";

# Building EVM Event Listeners for EigenLayer AVS

## Introduction

This will guide you through setting up and using EVM event listeners for Eigenlayer AVSes, using examples from the
[incredible squaring implementation](https://github.com/tangle-network/gadget/tree/main/blueprints/incredible-squaring-eigenlayer).
This will guide you through setting up and using EVM event listeners for EigenLayer AVSes, using examples from the
[Incredible Squaring blueprint implementation](https://github.com/tangle-network/gadget/tree/main/blueprints/incredible-squaring-eigenlayer).

EVM event listeners are crucial for interacting with smart contracts on Ethereum-compatible networks.
In the context of Eigenlayer and the blueprint macro system, these listeners allow your Gadget to respond to specific
events emitted by Eigenlayer contracts.
In the context of EigenLayer and the blueprint macro system, these listeners allow your Gadget to respond to specific
events emitted by EigenLayer contracts.

## Setting Up EVM Event Listeners

### 1. Contract Definition

First, define the contract interface using the `sol!` and `load_abi!` macros. This generates Rust bindings for your smart contract.
import GithubFileReaderDisplay from "../../components/GithubFileReaderDisplay";

<GithubFileReaderDisplay
<GithubFileReaderDisplay
url="https://github.com/tangle-network/gadget/blob/main/blueprints/incredible-squaring-eigenlayer/src/lib.rs"
fromLine={11}
toLine={22}
Expand All @@ -29,7 +32,7 @@ import GithubFileReaderDisplay from "../../components/GithubFileReaderDisplay";

Use the [`#[job]`](./blueprint-macros/jobs.mdx) macro to define a function that will handle specific events. Include the `event_listener` attribute to specify the event details:

<GithubFileReaderDisplay
<GithubFileReaderDisplay
url="https://github.com/tangle-network/gadget/blob/main/blueprints/incredible-squaring-eigenlayer/src/jobs/initialize_task.rs"
fromLine={12}
toLine={55}
Expand All @@ -40,7 +43,7 @@ Use the [`#[job]`](./blueprint-macros/jobs.mdx) macro to define a function that

Implement a function to convert the event data into the format expected by your job function:

<GithubFileReaderDisplay
<GithubFileReaderDisplay
url="https://github.com/tangle-network/gadget/blob/main/blueprints/incredible-squaring-eigenlayer/src/jobs/initialize_task.rs"
fromLine={57}
toLine={68}
Expand Down Expand Up @@ -76,7 +79,7 @@ let contract: IncredibleSquaringTaskManager::IncredibleSquaringTaskManagerInstan

Use the `EventWatcher` to listen for and handle events:

<GithubFileReaderDisplay
<GithubFileReaderDisplay
url="https://github.com/tangle-network/gadget/blob/main/blueprints/incredible-squaring-eigenlayer/src/main.rs"
fromLine={89}
toLine={96}
Expand Down
2 changes: 1 addition & 1 deletion pages/developers/tangle-avs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Before you begin, ensure you have the following installed:

## Creating my First Blueprint

See the [CLI Quickstart](./cli/quickstart.mdx) for instructions on creating a [blueprint](./blueprints.mdx).
See the [CLI Quickstart](./cli/quickstart.mdx) for instructions on creating a [blueprint](./blueprints/introduction.mdx).

### Key Files

Expand Down
2 changes: 1 addition & 1 deletion pages/network/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ Tangle Network employs a modular architecture to enable the creation and deploym

#### Blueprints

A Blueprint is a specification that defines a service, similar to an actively validated service (AVS). However, Blueprints themselves are not live service instances. Developers create Blueprints by specifying a "gadget" binary, the jobs involved, a set of smart contracts for registration and requesting instances, and additional metadata. Users can instance AVSes from Blueprints, similar to EC2 instances, by configuring the operator set and paying the necessary fees. [Read more about Blueprints](../developers/blueprints.mdx)
A Blueprint is a specification that defines a service, similar to an actively validated service (AVS). However, Blueprints themselves are not live service instances. Developers create Blueprints by specifying a "gadget" binary, the jobs involved, a set of smart contracts for registration and requesting instances, and additional metadata. Users can instance AVSes from Blueprints, similar to EC2 instances, by configuring the operator set and paying the necessary fees. [Read more about Blueprints](../developers/blueprints/introduction.mdx)

#### Restaking on Blueprints

Expand Down
2 changes: 1 addition & 1 deletion pages/restake/bridge.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ In order to participate in Tangle's restaking infrastructure, users need to firs

As of the time of writing of this page, the bridge only supports WETH for testnet transfers between Holesky and Tangle.

Soon, users will be able to create and deploy a Hyperlane Warp Route blueprint instance to support additional assets. [Learn more about Blueprints here](/developers/blueprints/introduction).
Soon, users will be able to create and deploy a Hyperlane Warp Route blueprint instance to support additional assets. [Learn more about Blueprints here](/developers/blueprints/introduction.mdx).

More information about adding support for additional assets will be provided in the near future. For now, make sure you've joined our Discord server & Telegram channel to stay updated.

Expand Down

0 comments on commit adceb41

Please sign in to comment.