diff --git a/docs/developers/Concepts/_category_.json b/docs/developers/Concepts/_category_.json
new file mode 100644
index 00000000..4f6616f2
--- /dev/null
+++ b/docs/developers/Concepts/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 1,
+ "label": "Concepts"
+}
\ No newline at end of file
diff --git a/docs/developers/avs-developer-guide.md b/docs/developers/Concepts/avs-developer-guide.md
similarity index 100%
rename from docs/developers/avs-developer-guide.md
rename to docs/developers/Concepts/avs-developer-guide.md
diff --git a/docs/developers/HowTo/_category_.json b/docs/developers/HowTo/_category_.json
new file mode 100644
index 00000000..40c82b3b
--- /dev/null
+++ b/docs/developers/HowTo/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 1,
+ "label": "How To"
+}
\ No newline at end of file
diff --git a/docs/developers/avs-opset-slashing.md b/docs/developers/HowTo/avs-opset-slashing.md
similarity index 99%
rename from docs/developers/avs-opset-slashing.md
rename to docs/developers/HowTo/avs-opset-slashing.md
index 36037667..0c437a04 100644
--- a/docs/developers/avs-opset-slashing.md
+++ b/docs/developers/HowTo/avs-opset-slashing.md
@@ -1,6 +1,6 @@
---
sidebar_position: 4
-title: AVS Operator Set and Slashing of Unique Stake
+title: Implement Slashing of Unique Stake
---
diff --git a/docs/developers/avs-permissionlesss.md b/docs/developers/HowTo/avs-permissionlesss.md
similarity index 94%
rename from docs/developers/avs-permissionlesss.md
rename to docs/developers/HowTo/avs-permissionlesss.md
index d6cc784f..5f4fdf4f 100644
--- a/docs/developers/avs-permissionlesss.md
+++ b/docs/developers/HowTo/avs-permissionlesss.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 8
-title: Permissionless Token Strategies
+sidebar_position: 7
+title: Add ERC-20 Tokens as Restakable Asset
---
# Permissionless Token Strategies
diff --git a/docs/developers/deployment-testnet-mainnet.md b/docs/developers/HowTo/deployment-testnet-mainnet.md
similarity index 77%
rename from docs/developers/deployment-testnet-mainnet.md
rename to docs/developers/HowTo/deployment-testnet-mainnet.md
index 5fa70ea9..6c4655bd 100644
--- a/docs/developers/deployment-testnet-mainnet.md
+++ b/docs/developers/HowTo/deployment-testnet-mainnet.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 9
-title: Preparing for Testnet and Mainnet Deployment
+sidebar_position: 6
+title: Prepare for and Deploy to Testnet and Mainnet
---
@@ -15,13 +15,13 @@ title: Preparing for Testnet and Mainnet Deployment
- Communication channels that will be utilized for AVS upgrades.
- Describe Operator monitoring tooling available, such as GraFana dashboards, log files or similar.
-3. Follow the [AVS Developer Security Best Practices](./avs-developer-best-practices.md) and [Key Manage Considerations for Developers](./avs-developer-best-practices.md#key-management-recommendation-for-developers).
+3. Follow the [AVS Developer Security Best Practices](../Reference/avs-developer-best-practices.md) and [Key Manage Considerations for Developers](../Reference/avs-developer-best-practices.md#key-management-recommendation-for-developers).
4. Implement the [Node Specification](https://docs.eigenlayer.xyz/eigenlayer/avs-guides/spec/intro) for your Operator executable package.
5. Follow the [Testnet Dashboard Onboarding instructions](https://docs.eigenlayer.xyz/eigenlayer/avs-guides/avs-dashboard-onboarding).
-6. Implement Rewards distributions per the instructions [here](./rewards.md).
+6. Implement Rewards distributions per the instructions [here](rewards.md).
## Preparing and Deploying to Mainnet
diff --git a/docs/developers/how-to-build-an-avs.md b/docs/developers/HowTo/how-to-build-an-avs.md
similarity index 97%
rename from docs/developers/how-to-build-an-avs.md
rename to docs/developers/HowTo/how-to-build-an-avs.md
index e2541425..e180eca9 100644
--- a/docs/developers/how-to-build-an-avs.md
+++ b/docs/developers/HowTo/how-to-build-an-avs.md
@@ -1,11 +1,11 @@
---
-sidebar_position: 3
+sidebar_position: 2
title: Build Your Own AVS
---
This section will walk you through the process of designing and building your own AVS from scratch. It is intended to take you from an idea to a working local prototype.
-Before proceeding, please review the previous sections on [AVS Overview](./avs-developer-guide.md), [EigenLayer Overview](/docs/eigenlayer/overview/README.md) and the [Quick Start example](./quickstart.md) to become familiar with the basic concepts.
+Before proceeding, please review the previous sections on [AVS Overview](../Concepts/avs-developer-guide.md), [EigenLayer Overview](/docs/eigenlayer/overview/README.md) and the [Quick Start example](quickstart.md) to become familiar with the basic concepts.
## Step 1: AVS Design
diff --git a/docs/developers/avs-dashboard-onboarding.md b/docs/developers/HowTo/onboard-avs-dashboard.md
similarity index 99%
rename from docs/developers/avs-dashboard-onboarding.md
rename to docs/developers/HowTo/onboard-avs-dashboard.md
index ad42b905..7f3953ea 100644
--- a/docs/developers/avs-dashboard-onboarding.md
+++ b/docs/developers/HowTo/onboard-avs-dashboard.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 7
-title: AVS Dashboard Onboarding
+sidebar_position: 5
+title: Onboard to AVS Dashboard
---
diff --git a/docs/developers/quickstart.md b/docs/developers/HowTo/quickstart.md
similarity index 98%
rename from docs/developers/quickstart.md
rename to docs/developers/HowTo/quickstart.md
index 1a05d61e..6539492d 100644
--- a/docs/developers/quickstart.md
+++ b/docs/developers/HowTo/quickstart.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 2
-title: Quick Start Example
+sidebar_position: 1
+title: Get started
---
## Hello World AVS: Local Deployment
@@ -84,7 +84,7 @@ function respondToTask(
}
```
-Please find a complete list of the requirements to implement an AVS at [Build Your Own AVS: Step 2 Idea to Code](/docs/developers/how-to-build-an-avs.md#step-2-idea-to-code-building-and-deploying-your-avs-locally).
+Please find a complete list of the requirements to implement an AVS at [Build Your Own AVS: Step 2 Idea to Code](/docs/developers/HowTo/how-to-build-an-avs.md#step-2-idea-to-code-building-and-deploying-your-avs-locally).
### Contract Deployment Scripts
diff --git a/docs/developers/rewards.md b/docs/developers/HowTo/rewards.md
similarity index 98%
rename from docs/developers/rewards.md
rename to docs/developers/HowTo/rewards.md
index 3b226f55..f2e9948d 100644
--- a/docs/developers/rewards.md
+++ b/docs/developers/HowTo/rewards.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 8
-title: AVS Rewards
+sidebar_position: 3
+title: Implement Rewards
---
## Overview
diff --git a/docs/developers/support.md b/docs/developers/HowTo/support.md
similarity index 87%
rename from docs/developers/support.md
rename to docs/developers/HowTo/support.md
index 0b481536..624c57f2 100644
--- a/docs/developers/support.md
+++ b/docs/developers/HowTo/support.md
@@ -1,6 +1,6 @@
---
-sidebar_position: 4
-title: Developer Support
+sidebar_position: 8
+title: Get Support
---
If you have any questions or comments throughout the AVS development process, you can get support by reaching out to us using the Intercom button on the bottom right side of this page or clicking here. We will promptly follow up with support!
\ No newline at end of file
diff --git a/docs/developers/Reference/_category_.json b/docs/developers/Reference/_category_.json
new file mode 100644
index 00000000..953bad76
--- /dev/null
+++ b/docs/developers/Reference/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 1,
+ "label": "Reference"
+}
\ No newline at end of file
diff --git a/docs/developers/avs-developer-best-practices.md b/docs/developers/Reference/avs-developer-best-practices.md
similarity index 100%
rename from docs/developers/avs-developer-best-practices.md
rename to docs/developers/Reference/avs-developer-best-practices.md
diff --git a/docs/developers/resources.md b/docs/developers/Reference/resources.md
similarity index 100%
rename from docs/developers/resources.md
rename to docs/developers/Reference/resources.md
diff --git a/docs/eigenlayer/overview/README.md b/docs/eigenlayer/overview/README.md
index c8961b10..5f105144 100644
--- a/docs/eigenlayer/overview/README.md
+++ b/docs/eigenlayer/overview/README.md
@@ -48,6 +48,6 @@ To learn more about EigenLayer please read the [**Whitepaper**](/pdf/EigenLayer_
Get started with EigenLayer:
- [Restake on EigenLayer](/eigenlayer/restaking-guides/overview)
- [Register as an Operator](/eigenlayer/operator-guides/operator-installation)
-- [Build an AVS](/developers/avs-developer-guide)
+- [Build an AVS](/developers/Concepts/avs-developer-guide)
- Join our Ecosystem: [Discord](https://discord.com/invite/eigenlayer), [Twitter](https://twitter.com/eigenlayer)
diff --git a/docs/eigenlayer/resources/learning-resources.md b/docs/eigenlayer/resources/learning-resources.md
index 949abd30..4f773c0d 100644
--- a/docs/eigenlayer/resources/learning-resources.md
+++ b/docs/eigenlayer/resources/learning-resources.md
@@ -31,7 +31,7 @@ title: Learning Resources
### Developer resources
-Please see Developer Learning Resources [here](/docs/developers/resources.md).
+Please see Developer Learning Resources [here](/docs/developers/Reference/resources.md).
### Community
diff --git a/docs/eigenlayer/restaking-guides/overview.md b/docs/eigenlayer/restaking-guides/overview.md
index 50d3be86..9a38ba5c 100644
--- a/docs/eigenlayer/restaking-guides/overview.md
+++ b/docs/eigenlayer/restaking-guides/overview.md
@@ -6,7 +6,7 @@ title: Restaking Overview
## **Liquid & Native Restaking**
-**Liquid restaking** is the process of depositing "liquid" tokens, including LSTs, EIGEN token, and any ERC20 token into the EigenLayer smart contracts. For more information about adding new ERC20 tokens, please see [Permissionless Token Strategies](/docs/developers/avs-permissionlesss.md).
+**Liquid restaking** is the process of depositing "liquid" tokens, including LSTs, EIGEN token, and any ERC20 token into the EigenLayer smart contracts. For more information about adding new ERC20 tokens, please see [Permissionless Token Strategies](/docs/developers/HowTo/avs-permissionlesss.md).
**Native restaking** is the process of changing an Ethereum validator's[ withdrawal credentials](https://notes.ethereum.org/@launchpad/withdrawals-faq#Q-What-are-withdrawals) to EigenLayer's smart contracts. You must operate an Ethereum Validator node in order to participate in Native Restaking. To learn more or set up your Ethereum Validator please follow this link from the[ Ethereum Foundation](https://launchpad.ethereum.org/).
diff --git a/docs/eigenlayer/rewards-claiming/rewards-claiming-overview.md b/docs/eigenlayer/rewards-claiming/rewards-claiming-overview.md
index 81477d93..b2133e89 100644
--- a/docs/eigenlayer/rewards-claiming/rewards-claiming-overview.md
+++ b/docs/eigenlayer/rewards-claiming/rewards-claiming-overview.md
@@ -45,4 +45,4 @@ Rewards are calculated via an off-chain process. A Merkle root is posted which r
## AVS Integrations
-Please refer to [AVS Guide: AVS Rewards](/docs/developers/rewards.md) for complete instructions.
+Please refer to [AVS Guide: AVS Rewards](/docs/developers/HowTo/rewards.md) for complete instructions.
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 804976ed..cef5e2dc 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -75,10 +75,7 @@ const config = {
to: "/eigenlayer/operator-guides/operator-faq",
},
- {
- from: "/eigenlayer/avs-guides/avs-development-guide",
- to: "/developers/how-to-build-an-avs",
- },
+
{
from: "/eigenlayer/restaking-guides/restaking-user-guide/testnet/rewards-claiming/rewards-claiming-instructions",
@@ -131,11 +128,58 @@ const config = {
from: "/eigenlayer/restaking-guides/restaking-user-guide/testnet/obtaining-testnet-eth-and-liquid-staking-tokens-lsts",
to: "/eigenlayer/restaking-guides/testnet/obtaining-testnet-eth-and-liquid-staking-tokens-lsts",
},
+ {
+ from: "/developers",
+ to: "/developers/Concepts/avs-developer-guide",
+ },
{
from: "/eigenlayer/economy/economy-overview",
to: "/eigenlayer/economy/economy-calculation-and-formulas",
},
-
+ {
+ from: "/developers/avs-developer-guide",
+ to: "/developers/Concepts/avs-developer-guide",
+ },
+ {
+ from: "/developers/avs-developer-best-practices",
+ to: "/developers/Reference/avs-developer-best-practices",
+ },
+ {
+ from: "/developers/avs-opset-slashing",
+ to: "/developers/HowTo/avs-opset-slashing",
+ },
+ {
+ from: "/developers/avs-permissionlesss",
+ to: "/developers/HowTo/avs-permissionlesss",
+ },
+ {
+ from: "/developers/deployment-testnet-mainnet",
+ to: "/developers/HowTo/deployment-testnet-mainnet",
+ },
+ {
+ from: "/developers/how-to-build-an-avs",
+ to: "/developers/HowTo/how-to-build-an-avs",
+ },
+ {
+ from: "/developers/avs-dashboard-onboarding",
+ to: "/developers/HowTo/onboard-avs-dashboard",
+ },
+ {
+ from: "/developers/rewards",
+ to: "/developers/HowTo/rewards",
+ },
+ {
+ from: "/developers/support",
+ to: "/developers/HowTo/support",
+ },
+ {
+ from: "/developers/resources",
+ to: "/developers/Reference/resources",
+ },
+ {
+ from: "/developers/quickstart",
+ to: "/developers/HowTo/quickstart",
+ },
],
createRedirects(existingPath) {
@@ -209,7 +253,7 @@ const config = {
activeBasePath: 'eigenlayer/',
},
{
- to: "developers/avs-developer-guide",
+ to: "developers/Concepts/avs-developer-guide",
label: "Developers",
position: "left",
activeBasePath: 'developer/',
diff --git a/src/pages/index.js b/src/pages/index.js
index a174a6c9..2d540bfa 100644
--- a/src/pages/index.js
+++ b/src/pages/index.js
@@ -52,7 +52,7 @@ function Home() {