diff --git a/docs/developers/guides/community/irys-dynamic-nfts.mdx b/docs/developers/guides/community/irys-dynamic-nfts.mdx
index 831c73643..e6f27b8d7 100644
--- a/docs/developers/guides/community/irys-dynamic-nfts.mdx
+++ b/docs/developers/guides/community/irys-dynamic-nfts.mdx
@@ -1,6 +1,6 @@
---
title: Create a dynamic NFT
-image: /img/socialCards/build-a-dynamic-nft.jpg
+image: /img/socialCards/create-a-dynamic-nft.jpg
description: Create NFTs that evolve based on user actions.
---
diff --git a/docs/developers/guides/community/irys-nfts.md b/docs/developers/guides/community/irys-nfts.md
index 1f4c3e217..3bf660754 100644
--- a/docs/developers/guides/community/irys-nfts.md
+++ b/docs/developers/guides/community/irys-nfts.md
@@ -1,6 +1,6 @@
---
title: Create an NFT
-image: /img/socialCards/build-a-nft.jpg
+image: /img/socialCards/create-an-nft.jpg
description: Build permanent NFTs using Irys and Linea.
---
diff --git a/docs/developers/guides/run-linea/index.mdx b/docs/developers/guides/run-linea/index.mdx
new file mode 100644
index 000000000..1c05ab125
--- /dev/null
+++ b/docs/developers/guides/run-linea/index.mdx
@@ -0,0 +1,34 @@
+---
+description: How to run a Linea network.
+image: /img/socialCards/how-to-run-a-linea-network.jpg
+---
+
+import DocCardList from "@theme/DocCardList";
+
+# Run Linea
+
+You can run the entire Linea stack or a Linea node. Choosing between running the entire Linea stack
+and a Linea node depends on your specific needs and the environment you're working in.
+
+## When to run the Linea stack
+
+:::info
+Currently, the Linea stack is available for local deployments only.
+:::
+
+Run the Linea stack locally if you want to develop or test applications on Linea without connecting
+to Sepolia or Ethereum Mainnet.
+
+The Linea stack incorporates the base layer (L1) and the Linea stack itself.
+By running the entire Linea stack locally, developers benefit from a controlled environment that provides
+direct access to the blockchain's capabilities.
+
+## When to run a Linea node
+
+Run a Linea node if you want a local view of the Linea blockchain state.
+A node enables users to call Linea JSON-RPC API methods and submit transactions to the
+mempool independently, without depending on external RPC providers.
+
+Select the appropriate card for more information on running Linea using your preferred setup:
+
+
diff --git a/docs/developers/guides/run-a-node/index.mdx b/docs/developers/guides/run-linea/run-a-node/index.mdx
similarity index 100%
rename from docs/developers/guides/run-a-node/index.mdx
rename to docs/developers/guides/run-linea/run-a-node/index.mdx
diff --git a/docs/developers/guides/run-a-node/use-binary.mdx b/docs/developers/guides/run-linea/run-a-node/use-binary.mdx
similarity index 100%
rename from docs/developers/guides/run-a-node/use-binary.mdx
rename to docs/developers/guides/run-linea/run-a-node/use-binary.mdx
diff --git a/docs/developers/guides/run-a-node/use-docker.mdx b/docs/developers/guides/run-linea/run-a-node/use-docker.mdx
similarity index 100%
rename from docs/developers/guides/run-a-node/use-docker.mdx
rename to docs/developers/guides/run-linea/run-a-node/use-docker.mdx
diff --git a/docs/developers/guides/run-a-node/volume-creation.mdx b/docs/developers/guides/run-linea/run-a-node/volume-creation.mdx
similarity index 100%
rename from docs/developers/guides/run-a-node/volume-creation.mdx
rename to docs/developers/guides/run-linea/run-a-node/volume-creation.mdx
diff --git a/docs/developers/guides/run-linea/run-the-stack/index.mdx b/docs/developers/guides/run-linea/run-the-stack/index.mdx
new file mode 100644
index 000000000..c50f8519a
--- /dev/null
+++ b/docs/developers/guides/run-linea/run-the-stack/index.mdx
@@ -0,0 +1,30 @@
+---
+description: Run the Linea stack.
+image: /img/socialCards/run-the-linea-stack.jpg
+---
+
+import DocCardList from "@theme/DocCardList";
+
+# Run the Linea stack
+
+:::info
+
+The Linea stack is currently available only for local testing. This includes a local version of the
+base layer (Hyperledger Besu) and the Linea stack itself.
+
+:::
+
+Run the the entire Linea stack to get working versions of:
+
+- **Sequencer**: Responsible for ordering, building, and executing blocks.
+- **State manager**: Manages the L2 network and account states.
+- **Coordinator**: Coordinates the steps to create zk proofs and ensures their persistence on the
+ L1 Ethereum network. It specifically handles batch conflation, blob creation, and aggregation.
+- **Traces API**: Provides trace counts and generates conflated trace files for zk proof creation.
+- **Provers**: Generates three types of zk-SNARK proofs: execution, compression, and aggregation.
+
+Refer to the [Linea architecture documentation](../../../../architecture/index.mdx) for more information
+about the Linea stack components.
+
+
+
diff --git a/docs/developers/guides/run-linea/run-the-stack/local.mdx b/docs/developers/guides/run-linea/run-the-stack/local.mdx
new file mode 100644
index 000000000..59b479a4d
--- /dev/null
+++ b/docs/developers/guides/run-linea/run-the-stack/local.mdx
@@ -0,0 +1,115 @@
+---
+description: Run the Linea stack locally.
+image: /img/socialCards/run-the-linea-stack-locally.jpg
+---
+
+import Tabs from "@theme/Tabs";
+import TabItem from "@theme/TabItem";
+
+# Run locally
+
+## Prerequisites
+
+Install the following:
+
+- [Node.js v18 or later](https://nodejs.org/en/download/package-manager)
+- [Docker v24 or later](https://docs.docker.com/get-docker/)
+- [Docker Compose v2.19 or later](https://docs.docker.com/compose/install/)
+- [Make v3.81 or later](https://www.npmjs.com/package/make)
+- [Pnpm v9.0.6 or later](https://pnpm.io/installation)
+
+:::important
+These instructions run the Linea stack using Docker containers. Set your Docker resources to
+use at least 10 CPU cores, 8 GB of memory, and 1 GB swap space.
+:::
+
+## Run the Linea stack
+
+### 1. Clone the repository
+
+Clone the Linea repository:
+
+```bash
+git clone https://github.com/Consensys/linea-monorepo.git
+```
+
+### 2. Install the dependencies
+
+Change to the root of the directory and install the project dependencies:
+
+```bash
+cd linea-monorepo
+```
+
+```bash
+pnpm install
+```
+
+### 3. Start the Linea stack
+
+Start the network stack. This will also compile and deploy the required rollup contracts:
+
+```bash
+make fresh-start-all
+```
+
+You now have a local developer instance of the entire Linea network, which includes components such as
+the sequencer, prover, coordinator, and a local L1 settlement layer. You can view these components in
+Docker Desktop.
+
+
+
+
+
+
+
+## View network details
+
+Access the RPC endpoints from the following local URLs:
+
+
+
+ - Endpoints:
+ - HTTPS: `http://localhost:8545`
+ - WebSockets: `ws://localhost:8546`
+ - Chain ID: `1337`
+ - [Message service address](../../../../architecture/stack/canonical-msg-service/message-service.mdx): `0xe537D669CA013d86EBeF1D64e40fC74CADC91987`
+ - Deployment account private key: `0x1dd171cec7e2995408b5513004e8207fe88d6820aeff0d82463b3e41df251aae`
+
+
+ - Endpoints:
+ - HTTPS: `http://localhost:8445`
+ - WebSockets: `ws://localhost:8446`
+ - Chain ID: `31648428`
+ - Linea rollup contract address: `0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9`
+ - Deployment account private key: `0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80`
+
+
+
+:::info
+You can [connect your MetaMask wallet](https://support.metamask.io/networks-and-sidechains/managing-networks/how-to-add-a-custom-network-rpc/#adding-a-network-manually)
+to the required chain and [import the deployment account](https://support.metamask.io/managing-my-wallet/accounts-and-addresses/how-to-import-an-account/#importing-using-a-private-key)
+to access the test tokens.
+:::
+
+## Stop the Linea stack
+
+You can stop and start the the Docker containers in Docker Desktop. However, constant stopping and
+starting can lead to network or state issues.
+
+Once stopped, you can clean your environment using the following commands:
+
+:::note
+This will permanently remove all Docker images, containers, volumes, and any data saved in them.
+:::
+
+```bash
+make clean-environment
+```
+```bash
+docker system prune --volumes
+```
+
diff --git a/docs/developers/reference/api/eth-sendrawtransaction.mdx b/docs/developers/reference/api/eth-sendrawtransaction.mdx
index 0f88fd406..ef0697855 100644
--- a/docs/developers/reference/api/eth-sendrawtransaction.mdx
+++ b/docs/developers/reference/api/eth-sendrawtransaction.mdx
@@ -1,5 +1,7 @@
---
description: Simulate transaction submission to help prevent failed transactions.
+image: >-
+ /img/socialCards/simulate-transaction-submission-to-help-prevent-failed-transactions.jpg
---
import Tabs from '@theme/Tabs';
diff --git a/docs/developers/tooling/data-indexers/covalent.md b/docs/developers/tooling/data-indexers/covalent.md
index 4ef17d145..965675cfb 100644
--- a/docs/developers/tooling/data-indexers/covalent.md
+++ b/docs/developers/tooling/data-indexers/covalent.md
@@ -138,4 +138,4 @@ Increment can be used for:
- [Increment](https://www.covalenthq.com/platform/increment/#/?utm_source=linea&utm_medium=partner-docs) - login via the Covalent Platform
- [Docs](https://www.covalenthq.com/docs/increment/?utm_source=linea&utm_medium=partner-docs) -
learn how to use Increment to build dynamic, custom charts
-- [Data models demo](https://www.covalenthq.com/docs/increment/data-models/model-intro/?utm_source=linea&utm_medium=partner-docs) - build analytics in three clicks
\ No newline at end of file
+- [Data models demo](https://www.covalenthq.com/docs/increment/data-models/model-intro/?utm_source=linea&utm_medium=partner-docs) - build analytics in three clicks
diff --git a/docs/developers/tooling/data-indexers/dipdup.md b/docs/developers/tooling/data-indexers/dipdup.md
index e4b1d1d75..ac3ea8a2b 100644
--- a/docs/developers/tooling/data-indexers/dipdup.md
+++ b/docs/developers/tooling/data-indexers/dipdup.md
@@ -1,5 +1,6 @@
---
title: DipDup
+image: /img/socialCards/dipdup.jpg
---
[DipDup](https://dipdup.io/) is a Python framework for building smart contract indexers.
diff --git a/docs/developers/tooling/node-providers.md b/docs/developers/tooling/node-providers.md
index c8e2145c2..66f219937 100644
--- a/docs/developers/tooling/node-providers.md
+++ b/docs/developers/tooling/node-providers.md
@@ -17,7 +17,7 @@ image: /img/socialCards/node-providers.jpg
## Run your own node
-- [Set it up yourself](../guides/run-a-node)
+- [Set it up yourself](../guides/run-linea/run-a-node/index.mdx)
- [One-click deploy with EasyNode](https://app.easy-node.xyz/)
- [One-click deploy with Mintair](https://mintair.xyz/)
- [One-click deploy with RapidNode](https://rapidnode.xyz/dashboard)
diff --git a/docs/developers/tooling/oracles/tellor.md b/docs/developers/tooling/oracles/tellor.md
index c91df80f0..b88982d13 100644
--- a/docs/developers/tooling/oracles/tellor.md
+++ b/docs/developers/tooling/oracles/tellor.md
@@ -1,6 +1,9 @@
---
title: Tellor
-description: A versatile oracle protocol that can provide data of any type permissionlessly with crypto-economic liveness and security.
+description: >-
+ A versatile oracle protocol that can provide data of any type permissionlessly
+ with crypto-economic liveness and security.
+image: /img/socialCards/tellor.jpg
---
# Tellor
diff --git a/docs/developers/tooling/permanent-data/irys/irys-quickstart.md b/docs/developers/tooling/permanent-data/irys/irys-quickstart.md
index 2a0d53fdc..dc0bb1955 100644
--- a/docs/developers/tooling/permanent-data/irys/irys-quickstart.md
+++ b/docs/developers/tooling/permanent-data/irys/irys-quickstart.md
@@ -1,6 +1,6 @@
---
title: Irys quickstart
-image: /img/socialCards/quickstart.jpg
+image: /img/socialCards/irys-quickstart.jpg
description: Creating permanent data using Irys SDK.
---
diff --git a/docusaurus.config.js b/docusaurus.config.js
index cde7ae8d2..b319b9d1c 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -137,9 +137,9 @@ const config = {
// ],
// },
{
- to: "/developers/guides/run-a-node",
+ to: "/developers/guides/run-linea",
position: "left",
- label: "Run a node",
+ label: "Run Linea",
},
{
to: "/developers/linea-version",
@@ -381,11 +381,12 @@ const config = {
from: "/build-on-linea/gas-fees",
},
{
- to: "/developers/guides/run-a-node",
+ to: "/developers/guides/run-linea",
from: [
"/build-on-linea/run-a-node",
"/build-on-linea/run-a-node/use-binary",
"/build-on-linea/run-a-node/use-docker",
+ "/developers/guides/run-a-node",
],
},
{
diff --git a/sidebars.js b/sidebars.js
index 229a0b417..c9e9e37b6 100644
--- a/sidebars.js
+++ b/sidebars.js
@@ -162,18 +162,41 @@ const sidebars = {
},
"developers/guides/linea-api/index",
"developers/guides/linea-sdk/index",
+
{
type: "category",
- label: "Run a Linea node",
+ label: "Run Linea",
link: {
type: "doc",
- id: "developers/guides/run-a-node/index",
+ id: "developers/guides/run-linea/index",
},
items: [
- "developers/guides/run-a-node/use-docker",
- "developers/guides/run-a-node/use-binary",
+ {
+ type: "category",
+ label: "Run the Linea stack",
+ link: {
+ type: "doc",
+ id: "developers/guides/run-linea/run-the-stack/index",
+ },
+ items: [
+ "developers/guides/run-linea/run-the-stack/local",
+ ],
+ },
+ {
+ type: "category",
+ label: "Run a Linea node",
+ link: {
+ type: "doc",
+ id: "developers/guides/run-linea/run-a-node/index",
+ },
+ items: [
+ "developers/guides/run-linea/run-a-node/use-docker",
+ "developers/guides/run-linea/run-a-node/use-binary",
+ ],
+ },
],
},
+
"developers/guides/linea-safe",
"developers/guides/linea-inscriptions",
],
diff --git a/src/components/HomepageCards/index.tsx b/src/components/HomepageCards/index.tsx
index 4b55143f6..c2dc3bdf1 100644
--- a/src/components/HomepageCards/index.tsx
+++ b/src/components/HomepageCards/index.tsx
@@ -51,12 +51,13 @@ const CardList: CardItem[] = [
icon: CardIcon2,
},
{
- title: "Run a node",
- link: "/developers/guides/run-a-node",
+ title: "Run Linea",
+ link: "/developers/guides/run-linea",
description: (
<>
- Learn how to run a Linea node with Besu or Geth, and interact with the
+ Learn how to run a Linea node or the Linea stack, and interact with the
blockchain locally
+
>
),
buttonName: "Learn",
diff --git a/src/css/custom.css b/src/css/custom.css
index e51f65059..6787a2652 100644
--- a/src/css/custom.css
+++ b/src/css/custom.css
@@ -571,7 +571,7 @@ html[data-theme="dark"] .header-dockerhub-link::before {
.navbar__link[href="/users"]::before,
.navbar__link[href="/developers/quickstart"]::before,
.navbar__link[href="/architecture"]::before,
-.navbar__link[href="/developers/guides/run-a-node"]::before {
+.navbar__link[href="/developers/guides/run-linea"]::before {
content: "";
display: inline-block;
width: 7px;
@@ -588,7 +588,7 @@ html[data-theme="dark"] .header-dockerhub-link::before {
.navbar__link[href="/users"]:hover::before,
.navbar__link[href="/developers/quickstart"]:hover::before,
.navbar__link[href="/architecture"]:hover::before,
-.navbar__link[href="/developers/guides/run-a-node"]:hover::before {
+.navbar__link[href="/developers/guides/run-linea"]:hover::before {
background-color: #61dfff;
border: 1px solid #61dfff;
}
@@ -610,7 +610,7 @@ html[data-theme="dark"] .header-dockerhub-link::before {
.navbar__link[href="/users"]::before,
.navbar__link[href="/developers/quickstart"]::before,
.navbar__link[href="/architecture"]::before,
- .navbar__link[href="/developers/guides/run-a-node"]::before {
+ .navbar__link[href="/developers/guides/run-linea"]::before {
display: none;
}
}
diff --git a/static/img/docs/build-on-linea/linea-stack.png b/static/img/docs/build-on-linea/linea-stack.png
new file mode 100644
index 000000000..7f6e105e5
Binary files /dev/null and b/static/img/docs/build-on-linea/linea-stack.png differ
diff --git a/static/img/socialCards/create-a-dynamic-nft.jpg b/static/img/socialCards/create-a-dynamic-nft.jpg
new file mode 100644
index 000000000..78ff2df1e
Binary files /dev/null and b/static/img/socialCards/create-a-dynamic-nft.jpg differ
diff --git a/static/img/socialCards/create-an-nft.jpg b/static/img/socialCards/create-an-nft.jpg
new file mode 100644
index 000000000..b4e873949
Binary files /dev/null and b/static/img/socialCards/create-an-nft.jpg differ
diff --git a/static/img/socialCards/dipdup.jpg b/static/img/socialCards/dipdup.jpg
new file mode 100644
index 000000000..57e0425c4
Binary files /dev/null and b/static/img/socialCards/dipdup.jpg differ
diff --git a/static/img/socialCards/how-to-run-a-linea-network.jpg b/static/img/socialCards/how-to-run-a-linea-network.jpg
new file mode 100644
index 000000000..085129462
Binary files /dev/null and b/static/img/socialCards/how-to-run-a-linea-network.jpg differ
diff --git a/static/img/socialCards/irys-quickstart.jpg b/static/img/socialCards/irys-quickstart.jpg
new file mode 100644
index 000000000..1088cb860
Binary files /dev/null and b/static/img/socialCards/irys-quickstart.jpg differ
diff --git a/static/img/socialCards/run-the-linea-stack-locally.jpg b/static/img/socialCards/run-the-linea-stack-locally.jpg
new file mode 100644
index 000000000..48015a6a0
Binary files /dev/null and b/static/img/socialCards/run-the-linea-stack-locally.jpg differ
diff --git a/static/img/socialCards/run-the-linea-stack.jpg b/static/img/socialCards/run-the-linea-stack.jpg
new file mode 100644
index 000000000..45bef2578
Binary files /dev/null and b/static/img/socialCards/run-the-linea-stack.jpg differ
diff --git a/static/img/socialCards/simulate-transaction-submission-to-help-prevent-failed-transactions.jpg b/static/img/socialCards/simulate-transaction-submission-to-help-prevent-failed-transactions.jpg
new file mode 100644
index 000000000..8586589c7
Binary files /dev/null and b/static/img/socialCards/simulate-transaction-submission-to-help-prevent-failed-transactions.jpg differ
diff --git a/static/img/socialCards/tellor.jpg b/static/img/socialCards/tellor.jpg
new file mode 100644
index 000000000..215a832c5
Binary files /dev/null and b/static/img/socialCards/tellor.jpg differ