Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
75b79ab
nav prototype
cpengilly Jan 28, 2025
a49be67
llint fixes
cpengilly Jan 28, 2025
6b39f43
fix breadcrumbs
cpengilly Jan 28, 2025
c75b40a
adding pages back
cpengilly Jan 28, 2025
a5a5ba5
redirects and breadcrumbs
cpengilly Jan 28, 2025
3827fd5
fix breadcrumbs
cpengilly Jan 28, 2025
81a8a2f
Delete tools.mdx
cpengilly Jan 28, 2025
b4d5868
links and breadcrumbs
cpengilly Jan 28, 2025
7707d02
fix internal links
cpengilly Jan 28, 2025
7cdf99f
linter fix
cpengilly Jan 28, 2025
6235821
broken links
cpengilly Jan 28, 2025
89e22ad
lint fixes
cpengilly Jan 28, 2025
aba31ae
link updates
cpengilly Jan 28, 2025
e92a640
linter
cpengilly Jan 28, 2025
53ea46f
custom footer
cpengilly Feb 4, 2025
6374bf3
updated the footer with css
krofax Feb 4, 2025
e8eefe2
pushed tiny css fixes
krofax Feb 4, 2025
6d1bcca
fix merge conflicts
cpengilly Feb 4, 2025
800c8b6
fix merge conflicts
cpengilly Feb 4, 2025
77a889b
breadcrumbs
cpengilly Feb 4, 2025
abe0167
fix linting
cpengilly Feb 4, 2025
31e601f
index page update
cpengilly Feb 4, 2025
10dea0b
Update index.mdx
cpengilly Feb 4, 2025
39651d3
Fix lockfile
bradleycamacho Feb 4, 2025
d8b049f
Revert "Fix lockfile"
bradleycamacho Feb 4, 2025
c5cf403
Remove ts-node
bradleycamacho Feb 4, 2025
29ea1eb
Revert "Remove ts-node"
bradleycamacho Feb 4, 2025
6a89b30
Rever package and lock files
bradleycamacho Feb 4, 2025
ff2eaf0
Update ts-node
bradleycamacho Feb 4, 2025
92bb9a2
Lock file update again
bradleycamacho Feb 4, 2025
3f4e2ba
Update lock and package again
bradleycamacho Feb 4, 2025
54c0abc
small-update
cpengilly Feb 4, 2025
4e23531
circle ci fix
cpengilly Feb 4, 2025
3a8cb7d
fix
cpengilly Feb 4, 2025
1883de0
Update config.yml
cpengilly Feb 4, 2025
210deb0
Update config.yml
cpengilly Feb 4, 2025
f992e1d
Update config.yml
cpengilly Feb 4, 2025
af449fa
Update config.yml
cpengilly Feb 4, 2025
826a310
Update config.yml
cpengilly Feb 5, 2025
3571810
circle ci fix
cpengilly Feb 5, 2025
be81f3f
Update config.yml
cpengilly Feb 5, 2025
a8827d0
Update config.yml
cpengilly Feb 5, 2025
e00e912
Update config.yml
cpengilly Feb 5, 2025
2622e99
Update config.yml
cpengilly Feb 5, 2025
3207c4e
Merge branch 'main' into nav-prototype
cpengilly Feb 5, 2025
9487674
Update words.txt
cpengilly Feb 5, 2025
5b65a6f
update env config
jvmi7 Feb 5, 2025
c32d9e2
Merge pull request #1320 from ethereum-optimism/make-env-optional
bradleycamacho Feb 5, 2025
aed5751
Merge branch 'main' into Nav-prototype-test-branch
bradleycamacho Feb 6, 2025
d9b349e
Test lock fix
bradleycamacho Feb 6, 2025
49ed57d
Merge branch 'main' into Nav-prototype-test-branch
bradleycamacho Feb 6, 2025
0766fc0
Update components/Footer.tsx
krofax Feb 6, 2025
0b2151a
Remove OP Stack Hacks from nav
bradleycamacho Feb 6, 2025
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
3 changes: 3 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,9 @@ commands:
- restore_cache:
keys:
- v1-pnpm-cache-{{ checksum "pnpm-lock.yaml" }}
- run:
name: Set up pnpm global bin directory
command: pnpm setup # Run setup to configure the global bin directory
- run:
name: Install dependencies
command: npm install -g pnpm && pnpm install
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/suggest_troubleshooting_item.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ body:
- type: markdown
attributes:
value: |
Before submitting this suggestion, be sure to read our expectations for [troubleshooting content](https://docs.optimism.io/contribute/style-guide#troubleshooting-guides). <br> For an example troubleshooting guide with problem+solution pairs, see [Troubleshooting: L2 Rollup](https://docs.optimism.io/builders/chain-operators/management/troubleshooting).
Before submitting this suggestion, be sure to read our expectations for [troubleshooting content](https://docs.optimism.io/contribute/style-guide#troubleshooting-guides). <br> For an example troubleshooting guide with problem+solution pairs, see [Troubleshooting: L2 Rollup](https://docs.optimism.io/operators/chain-operators/management/troubleshooting).
- type: markdown
id: project_info
attributes:
Expand Down
98 changes: 98 additions & 0 deletions components/Footer.tsx

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion components/calculator/ResultsTable.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ export function ResultsTable({
<p className="calculator-info calculator-text">
<strong>Note: </strong>This is an estimation,{" "}
<a
href="/builders/chain-operators/management/blobs#determine-scalar-values-for-using-blobs"
href="/operators/chain-operators/management/blobs#determine-scalar-values-for-using-blobs"
target="_blank"
>
read how to determine scalar values using blobs
Expand Down
2 changes: 1 addition & 1 deletion notes/breadcrumbs.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ pnpm fix
1. **Before Running**
* Commit your current changes
* Ensure you're in the docs root directory
* Target folders should exist: `builders`, `chain`, `stack`, `connect`
* Target folders should exist: `app-developers`, `operators`, `stack`, `superchain`

2. **After Running**
* Review generated `.mdx` files in each folder
Expand Down
5 changes: 3 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,8 @@
"remark-lint-unordered-list-marker-style": "^3.1.2",
"remark-preset-lint-consistent": "^5.1.2",
"remark-preset-lint-recommended": "^6.1.3",
"typescript": "^5.2.2",
"ts-node": "10.9.2",
"typescript": "^5.3.2",
"unified-lint-rule": "^2.1.2",
"unist-util-visit": "^5.0.0"
},
Expand All @@ -74,4 +75,4 @@
"nextra@2.13.2": "patches/nextra@2.13.2.patch"
}
}
}
}
145 changes: 77 additions & 68 deletions pages/_meta.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,88 @@
{
"index": {
"title": "Getting started",
"title": "Home",
"display": "hidden",
"theme": {
"breadcrumb": false,
"footer": true,
"sidebar": false,
"toc": false,
"pagination": false
}
},
"notices": {
"title": "Notices (README)"
},
"+++ Notices": {
"title": "",
"type": "separator"
},

"get-started": {
"title": "Get started",
"type":"page",
"theme": {
"navbar": true,
"sidebar": true,
"toc": true,
"pagination": true
},
"display": "children"
},
"superchain": {
"title": "Superchain",
"type":"page",
"theme": {
"navbar": true,
"sidebar": true,
"toc": true,
"pagination": true
},
"display": "children"
},
"app-developers": {
"title": "App Devs",
"type": "page",
"theme": {
"navbar": true,
"sidebar": true,
"toc": true,
"pagination": true
},
"display": "children"
},
"operators": {
"title": "Operators",
"type": "page",
"theme": {
"navbar": true,
"sidebar": true,
"toc": true,
"pagination": true
},
"display": "children"
},
"stack": {
"title": "OP Stack",
"type": "page",
"theme": {
"navbar": true,
"sidebar": true,
"toc": true,
"pagination": true
},
"display": "children"
},

"connect": {
"title": "Connect",
"type": "page",
"display": "hidden",
"theme": {
"breadcrumb": false,
"footer": true,
"sidebar": true,
"toc": false,
"pagination": false
}
},
Expand Down Expand Up @@ -35,72 +111,5 @@
"toc": false,
"pagination": false
}
},

"faucet": {
"title": "Superchain faucet",
"type": "page",
"href": "https://console.optimism.io/faucet?utm_source=docs",
"newWindow": true
},
"gas": {
"title": "Gas tracker",
"type": "page",
"href": "https://optimistic.grafana.net/public-dashboards/c84a5a9924fe4e14b270a42a8651ceb8?orgId=1&refresh=5m",
"newWindow": true
},
"status": {
"title": "Status",
"type": "page",
"href": "https://status.optimism.io/",
"newWindow": true
},

"--- BUILDERS": {
"title": "BUILDERS",
"type": "separator"
},
"builders": {
"title": "Builders",
"display": "children"
},

"+++ THE SUPERCHAIN": {
"title": "",
"type": "separator"
},
"--- THE SUPERCHAIN": {
"title": "THE SUPERCHAIN",
"type": "separator"
},
"superchain": {
"title": "The Superchain",
"display": "children"
},

"+++ OP STACK": {
"title": "",
"type": "separator"
},
"--- OP STACK": {
"title": "OP STACK",
"type": "separator"
},
"stack": {
"title": "OP Stack",
"display": "children"
},

"+++ CONNECT": {
"title": "",
"type": "separator"
},
"--- CONNECT": {
"title": "CONNECT",
"type": "separator"
},
"connect": {
"title": "Connect",
"display": "children"
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
{
"--- App Devs": {
"title": "App Developers",
"type": "separator"
},
"overview": "Overview",
"quick-start": "Superchain app quick start",
"tutorials": "Tutorials",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,8 @@ import { Card, Cards } from 'nextra/components'
This section provides information on bridging basics, custom bridges, sending data between l1 and l2 and using the standard bridge. You'll find guide, overview to help you understand and work with these topics.

<Cards>
<Card title="Bridging basics" href="/builders/app-developers/bridging/basics" />

<Card title="Custom bridges" href="/builders/app-developers/bridging/custom-bridge" />

<Card title="Sending data between l1 and l2" href="/builders/app-developers/bridging/messaging" />

<Card title="Using the standard bridge" href="/builders/app-developers/bridging/standard-bridge" />
<Card title="Bridging basics" href="/app-developers/bridging/basics" />
<Card title="Custom bridges" href="/app-developers/bridging/custom-bridge" />
<Card title="Sending data between L1 and L2" href="/app-developers/bridging/messaging" />
<Card title="The Standard Bridge" href="/app-developers/bridging/standard-bridge" />
</Cards>
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ All of this is easily accessible with a simple, clean API.
Ready to start bridging?
Check out these tutorials to get up to speed fast.

* [Learn how to bridge ERC-20 tokens with viem](/builders/app-developers/tutorials/cross-dom-bridge-erc20)
* [Learn how to bridge ETH with viem](/builders/app-developers/tutorials/cross-dom-bridge-eth)
* [Learn how to create a standard bridged token](/builders/app-developers/tutorials/standard-bridge-standard-token)
* [Learn how to create a custom bridged token](/builders/app-developers/tutorials/standard-bridge-custom-token)
* [Learn how to bridge ERC-20 tokens with viem](/app-developers/tutorials/cross-dom-bridge-erc20)
* [Learn how to bridge ETH with viem](/app-developers/tutorials/cross-dom-bridge-eth)
* [Learn how to create a standard bridged token](/app-developers/tutorials/standard-bridge-standard-token)
* [Learn how to create a custom bridged token](/app-developers/tutorials/standard-bridge-custom-token)
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ This guide provides important information you should be aware of when building a
<Callout>
Custom bridges can bring a significant amount of complexity and risk to any project.
Before you commit to a custom bridge, be sure that the [Standard Bridge](./standard-bridge) definitely does not support your use case.
[Building a custom bridged token](/builders/app-developers/tutorials/standard-bridge-custom-token) is often sufficient for projects that need more flexibility.
[Building a custom bridged token](/app-developers/tutorials/standard-bridge-custom-token) is often sufficient for projects that need more flexibility.
</Callout>

## Guidelines
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ This page explains how bridging works, how to use it, and what to watch out for.

<Callout type="info">
This is a high-level overview of the bridging process.
For a step-by-step tutorial on how to send data between L1 and L2, check out the [Solidity tutorial](/builders/app-developers/tutorials/cross-dom-solidity).
For a step-by-step tutorial on how to send data between L1 and L2, check out the [Solidity tutorial](/app-developers/tutorials/cross-dom-solidity).
</Callout>

## Understanding contract calls
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -199,10 +199,10 @@ Users simply need to trigger and send ETH to the [`bridgeETH`](https://github.co

## Tutorials

* [Learn how to bridge ERC-20 tokens with viem](/builders/app-developers/tutorials/cross-dom-bridge-erc20)
* [Learn how to bridge ETH with viem](/builders/app-developers/tutorials/cross-dom-bridge-eth)
* [Learn how to create a standard bridged token](/builders/app-developers/tutorials/standard-bridge-standard-token)
* [Learn how to create a custom bridged token](/builders/app-developers/tutorials/standard-bridge-custom-token)
* [Learn how to bridge ERC-20 tokens with viem](/app-developers/tutorials/cross-dom-bridge-erc20)
* [Learn how to bridge ETH with viem](/app-developers/tutorials/cross-dom-bridge-eth)
* [Learn how to create a standard bridged token](/app-developers/tutorials/standard-bridge-standard-token)
* [Learn how to create a custom bridged token](/app-developers/tutorials/standard-bridge-custom-token)

## Superchain Token List

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ But a few differences [do exist](/stack/differences).

## OP Stack chains endpoint URLs

To access any Ethereum type network you need an endpoint. [These providers](/builders/tools/connect/rpc-providers) support our networks.
To access any Ethereum type network you need an endpoint. [These providers](/app-developers/tools/connect/rpc-providers) support our networks.

### Network choice

Expand Down Expand Up @@ -58,7 +58,7 @@ Only when you have a version that works well on a test network should you deploy

### Contract source verification

You don't have to upload your source code to [block explorers](/builders/tools/build/block-explorers), but it is a good idea.
You don't have to upload your source code to [block explorers](/app-developers/tools/build/block-explorers), but it is a good idea.
On the test network, it lets you issue queries and transactions from the explorer's user interface.
On the production network, it lets users know exactly what your contract does, which is conducive to trust.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,19 @@ In this area of the Optimism Docs you'll find everything you need to know about

## Getting started

If you're brand new to OP Mainnet, try starting with the guide on [deploying a basic contract](/builders/app-developers/getting-started).
If you're brand new to OP Mainnet, try starting with the guide on [deploying a basic contract](/app-developers/getting-started).
It'll get you familiar with the basic steps required to get a contract deployed to the network.
OP Mainnet is [EVM equivalent](https://web.archive.org/web/20231127160757/https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306) so you can feel confident that your existing Ethereum smart contract skills will carry over to OP Mainnet.
Just make sure to be aware of the few small [differences between Ethereum and OP Mainnet](/stack/differences).

You might also want to check out the [testing on OP Networks guide](/builders/app-developers/testing-apps) and the tutorial on [running a local development environment](/stack/dev-node) to help you feel totally confident in your OP Mainnet deployment.
You might also want to check out the [testing on OP Networks guide](/app-developers/testing-apps) and the tutorial on [running a local development environment](/stack/dev-node) to help you feel totally confident in your OP Mainnet deployment.

<Cards>
<Card title="Deploying Your First Contract to OP Mainnet" href="/builders/app-developers/overview" icon={<img src="/img/icons/shapes.svg" />} />
<Card title="Deploying Your First Contract to OP Mainnet" href="/app-developers/overview" icon={<img src="/img/icons/shapes.svg" />} />

<Card title="Solidity Compatibility on OP Mainnet" href="/stack/differences" icon={<img src="/img/icons/shapes.svg" />} />

<Card title="Testing Apps on OP Mainnet" href="/builders/app-developers/testing-apps" icon={<img src="/img/icons/shapes.svg" />} />
<Card title="Testing Apps on OP Mainnet" href="/app-developers/testing-apps" icon={<img src="/img/icons/shapes.svg" />} />
</Cards>

## Bridging and messaging
Expand All @@ -39,11 +39,11 @@ Contracts on one chain can trigger contract functions on the other chain, it's p
The Standard Token Bridge for OP Mainnet even uses this same message-passing infrastructure under the hood.

<Cards>
<Card title="Basics of Bridging on OP Mainnet" href="/builders/app-developers/bridging/basics" icon={<img src="/img/icons/shapes.svg" />} />
<Card title="Basics of Bridging on OP Mainnet" href="/app-developers/bridging/basics" icon={<img src="/img/icons/shapes.svg" />} />

<Card title="Sending Data Between L1 and L2" href="/builders/app-developers/bridging/messaging" icon={<img src="/img/icons/shapes.svg" />} />
<Card title="Sending Data Between L1 and L2" href="/app-developers/bridging/messaging" icon={<img src="/img/icons/shapes.svg" />} />

<Card title="The Standard Bridge" href="/builders/app-developers/bridging/standard-bridge" icon={<img src="/img/icons/shapes.svg" />} />
<Card title="The Standard Bridge" href="/app-developers/bridging/standard-bridge" icon={<img src="/img/icons/shapes.svg" />} />
</Cards>

## Tutorials
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ You can request testnet ETH from the Superchain Faucet in one of two ways: **con

<Callout>
Looking for more faucets?
You can also try using [other available OP Sepolia faucets](/builders/tools/build/faucets).
You can also try using [other available OP Sepolia faucets](/app-developers/tools/build/faucets).
</Callout>

## Step 2: Build a basic app with Scaffold-OP
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,14 @@ Running proper testing is key to identifying fringe cases where the equivalence
## Multilayer integration tests

Some apps need OP Stack-specific features that aren't available as part of the development stack.
For example, if your decentralized application relies on [inter-domain communication](/builders/app-developers/bridging/messaging), the effort of developing a stub to let you debug it in a development stack is probably greater than the hassle of having the automated test go to [a local development environment](dev-node) each time.
For example, if your decentralized application relies on [inter-domain communication](/app-developers/bridging/messaging), the effort of developing a stub to let you debug it in a development stack is probably greater than the hassle of having the automated test go to [a local development environment](dev-node) each time.

## Integration with other products

In many cases a decentralized application requires the services of other contracts.
For example, [Perpetual v. 2](https://docs.perp.com/docs/guides/integration-guide) cannot function without [Uniswap v. 3](https://uniswap.org/blog/uniswap-v3).

If that is the case you can use [mainnet forking](https://hardhat.org/hardhat-network/guides/mainnet-forking.html).

It works with OP Stack chains.
Alternatively, you can connect to our [test network](/superchain/networks#op-sepolia) if those contracts are also deployed there (in many cases they are).
21 changes: 21 additions & 0 deletions pages/app-developers/tools.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Tools
lang: en-US
description: Information on open-source code repositories for OP Stack builders and SuperSim.
---

import { Card, Cards } from 'nextra/components'

# Tools

This section provides information on open-source code repositories for OP Stack builders and SuperSim. Users will find references to help understand and work with these topics.

<Cards>
<Card title="Open-Source Code Repository for OP Stack Builders" href="/app-developers/tools/ecosystem-overview" />
<Card title="SuperSim" href="/app-developers/tools/supersim" />
<Card title="Build" href="/app-developers/tools/build" />
<Card title="Connect" href="/app-developers/tools/connect" />
<Card title="Monitor" href="/app-developers/tools/monitor" />
<Card title="Op Tools" href="/app-developers/tools/op-tools" />
<Card title="Developer tools" href="/app-developers/tools/overview" />
</Cards>
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,5 @@
"connect": "Connecting",
"build": "Building",
"monitor": "Monitoring",
"op-tools": "OP tools",
"fee-calculator": "Fee calculator"
"op-tools": "OP tools"
}
Loading