Skip to content

Commit

Permalink
Added brief concept topics for EigenLayer core and middleware contrac…
Browse files Browse the repository at this point in the history
…ts (#421)

Co-authored-by: Wes Floyd <[email protected]>
  • Loading branch information
MadelineAu and wesfloyd authored Feb 10, 2025
1 parent 1684eb2 commit 4fd4b0c
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 0 deletions.
4 changes: 4 additions & 0 deletions docs/developers/Concepts/eigenlayer-contracts/_category_.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"position": 1,
"label": "EigenLayer Contracts"
}
17 changes: 17 additions & 0 deletions docs/developers/Concepts/eigenlayer-contracts/core-contracts.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
sidebar_position: 1
title: EigenLayer Core Contracts
---

The EigenLayer core contracts are the set of contracts that implement the EigenLayer protocol. The EigenLayer protocol includes
Staking, Operations, and AVS registration and allocation. The contracts for an AVS interact with the EigenLayer contracts.

We recommend new AVS developers use the [EigenLayer middleware contracts](middleware-contracts.md) as the higher level interface
to the core contracts.

The EigenLayer core contracts are documented in the [eigenlayer-contracts](https://github.com/Layr-Labs/eigenlayer-contracts) repository. The core contracts include:
* StrategyManager
* DelegationManager
* AVSDirectory
* Slasher
* RewardsCoordinator.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
sidebar_position: 1
title: EigenLayer Middleware Contracts
---

The EigenLayer middleware contracts are higher level interfaces to the [EigenLayer core contracts](core-contracts.md).
The middleware contracts can be:
* Deployed as is. The exception is the ServiceManager contract used to register and deregister an AVS with EigenLayer.
* Modified to implement logic specific to the AVS before deploying
* Not used. In this case, the interfaces present in the middleware contracts must be implemented in the AVS contracts.

We recommend new AVS developers use the middleware contracts as the higher level interface
to the core contracts.

The middleware contracts are documented in the [eigenlayer-middleware](https://github.com/Layr-Labs/eigenlayer-middleware) repository.
The ServiceManagerBase contract is the reference implementation for the onchain registration and deregistration that each AVS must have.

0 comments on commit 4fd4b0c

Please sign in to comment.