Skip to content

Commit

Permalink
Merge pull request #189 from tablelandnetwork/dtb/new-chains
Browse files Browse the repository at this point in the history
Add Optimism Sepolia, remove Optimism Goerli
  • Loading branch information
dtbuchholz authored Mar 8, 2024
2 parents 52a559a + cd875d3 commit 1fd70e9
Show file tree
Hide file tree
Showing 21 changed files with 250 additions and 310 deletions.
4 changes: 2 additions & 2 deletions docs/api/sdk/classes/Validator.md
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ ___

### version

**version**(`signal?`): `Promise`\<`Camelize`\<`Required`\<\{ `binary_version?`: `string` ; `build_date?`: `string` ; `git_branch?`: `string` ; `git_commit?`: `string` ; `git_state?`: `string` ; `git_summary?`: `string` ; `version?`: `number` }\>\>\>
**version**(`signal?`): `Promise`\<`Camelize`\<`Required`\<\{ `binary_version?`: `string` ; `build_date?`: `string` ; `git_branch?`: `string` ; `git_commit?`: `string` ; `git_state?`: `string` ; `git_summary?`: `string` }\>\>\>

Get version information

Expand All @@ -225,7 +225,7 @@ Get version information

#### Returns

`Promise`\<`Camelize`\<`Required`\<\{ `binary_version?`: `string` ; `build_date?`: `string` ; `git_branch?`: `string` ; `git_commit?`: `string` ; `git_state?`: `string` ; `git_summary?`: `string` ; `version?`: `number` }\>\>\>
`Promise`\<`Camelize`\<`Required`\<\{ `binary_version?`: `string` ; `build_date?`: `string` ; `git_branch?`: `string` ; `git_commit?`: `string` ; `git_state?`: `string` ; `git_summary?`: `string` }\>\>\>

**`Description`**

Expand Down
14 changes: 7 additions & 7 deletions docs/api/sdk/namespaces/helpers.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ The set of chains and their information as supported by the Tableland network.

#### Defined in

@tableland/sdk/src/helpers/chains.ts:71
@tableland/sdk/src/helpers/chains.ts:67

## Functions

Expand Down Expand Up @@ -275,7 +275,7 @@ A string representing the default host uri for a given chain.

#### Defined in

@tableland/sdk/src/helpers/chains.ts:139
@tableland/sdk/src/helpers/chains.ts:135

___

Expand All @@ -299,7 +299,7 @@ A number representing the default chain ID of the requested chain.

#### Defined in

@tableland/sdk/src/helpers/chains.ts:130
@tableland/sdk/src/helpers/chains.ts:126

___

Expand All @@ -323,7 +323,7 @@ An object containing the default chainId, contractAddress, chainName, and baseUr

#### Defined in

@tableland/sdk/src/helpers/chains.ts:86
@tableland/sdk/src/helpers/chains.ts:82

___

Expand All @@ -347,7 +347,7 @@ A hex string representing the default address for the Tableland registry contrac

#### Defined in

@tableland/sdk/src/helpers/chains.ts:121
@tableland/sdk/src/helpers/chains.ts:117

___

Expand Down Expand Up @@ -467,7 +467,7 @@ An boolean to indicate the testnet classification of the given chain.

#### Defined in

@tableland/sdk/src/helpers/chains.ts:105
@tableland/sdk/src/helpers/chains.ts:101

___

Expand Down Expand Up @@ -513,7 +513,7 @@ void

#### Defined in

@tableland/sdk/src/helpers/chains.ts:164
@tableland/sdk/src/helpers/chains.ts:160

___

Expand Down
2 changes: 1 addition & 1 deletion docs/cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ Testnets

- `sepolia` (Ethereum Sepolia)
- `maticmum` (Polygon Mumbai)
- `optimism-goerli` (Optimism Goerli)
- `optimism-sepolia` (Optimism Sepolia)
- `arbitrum-sepolia` (Arbitrum Sepolia)
- `filecoin-calibration` (Filecoin Calibration)

Expand Down
8 changes: 4 additions & 4 deletions docs/cli/chains.md
Original file line number Diff line number Diff line change
Expand Up @@ -85,10 +85,10 @@ tableland chains
"pollingTimeout": 40000,
"pollingInterval": 1500
},
"optimism-goerli": {
"chainName": "optimism-goerli",
"chainId": 420,
"contractAddress": "0xC72E8a7Be04f2469f8C2dB3F1BdF69A7D516aBbA",
"optimism-sepolia": {
"chainName": "optimism-sepolia",
"chainId": 11155420,
"contractAddress": "0x68A2f4423ad3bf5139Db563CF3bC80aA09ed7079",
"baseUrl": "https://testnets.tableland.network/api/v1",
"pollingTimeout": 10000,
"pollingInterval": 1500
Expand Down
2 changes: 1 addition & 1 deletion docs/cli/init.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ arbitrum-nova
matic
filecoin
sepolia
optimism-goerli
optimism-sepolia
arbitrum-sepolia
maticmum
filecoin-calibration
Expand Down
6 changes: 2 additions & 4 deletions docs/contribute/style-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -199,12 +199,10 @@ import { SupportedChains, ChainsList, ChainInfo } from '@site/src/components/Sup

## Components

There does exist some custom components that can be imported and used in markdown. For example, you can use `<Address />` to render the connected wallet or some default value—for example, the following uses `<Address />` (try connecting & disconnecting your wallet): <Address />. The `Wallet` component holds this logic, so you'll have to import it from `@site/src/components/Wallet`.

Some other utilities exist in the `SupportedChains` component, such as importing `<ChainsList />`, `<ChainInfo />`, or `<SupportedChains />`. With `<ChainsList />`, you can pass optional strings of either `testnets` or `mainnets` for `type`, which will only include testnet or mainnet chains; similarly, the `format` prop can use either `list` or `string`. With `<ChainInfo />`, you pass a `name` prop for the chain's name (matching `ethersjs`) along with the info desired (`name`, `chainId`, etc.). The `getChainInfo()` method is used under the hood and takes the same parameters.
There are a few custom components that can be imported and used in markdown. For example, you can use `<ChainsList />`, `<ChainInfo />`, `<SupportedChains />` etc. to render content in markdown. The components can be found in the `/src/components` directory of the docs site.

```js
import { ChainsList, ChainInfo, getChainInfo, SupportedChains } from '@site/src/components/SupportedChains'
import { ChainsList, ChainInfo, SupportedChains } from '@site/src/components/SupportedChains'

<ChainsList type={'testnets'} format={'string'} />

Expand Down
2 changes: 1 addition & 1 deletion docs/fundamentals/about/roadmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ We’re here to build a new web. Together.
- Release support for SQL privileges (`GRANT` and `REVOKE`).
- Release support for table access control Policies.
- Release [Javascript SDK](https://github.com/tablelandnetwork/js-tableland).
- The Tableland protocol launches on Ethereum Goerli, Polygon Mumbai, Optimism Kovan.
- The Tableland protocol launches on Ethereum, Polygon, and Optimism testnets.

#### Q1

Expand Down
4 changes: 2 additions & 2 deletions docs/fundamentals/architecture/table-token.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ To view the TABLE token itself, check out the deployed contracts on various bloc
| Arbitrum One | Mainnet | https://opensea.io/collection/tableland-tables-arbitrum |
| Arbitrum Nova | Mainnet | https://opensea.io/collection/tableland-tables-arbitrum-nova |
| Polygon | Mainnet | https://opensea.io/collection/tableland-tables-polygon |
| Ethereum Sepolia | Testnet | No marketplace support |
| Optimism Goerli | Testnet | https://testnets.opensea.io/collection/tableland-tables-optimism-goerli |
| Ethereum Sepolia | Testnet | https://testnets.opensea.io/collection/tableland-tables-2 |
| Optimism Sepolia | Testnet | No marketplace support |
| Arbitrum Sepolia | Testnet | https://testnets.opensea.io/collection/tableland-tables-arbitrum-sepolia |
| Polygon Mumbai | Testnet | https://testnets.opensea.io/collection/tableland-tables-mumbai |
2 changes: 1 addition & 1 deletion docs/playbooks/frameworks/wagmi.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ const { chains, publicClient, webSocketPublicClient } = configureChains(
chain.arbitrum,
chain.sepolia,
chain.polygonMumbai,
chain.optimismGoerli,
chain.optimismSepolia,
chain.arbitrumSepolia,
chain.filecoinCalibration,
chain.hardhat,
Expand Down
2 changes: 1 addition & 1 deletion docs/playbooks/integrations/ipfs.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ const localPinner = pinToLocal({
});
```

Once you local pinner is set up, you can create a new `Database` instance and create a table. This example shows how you might set it up in a Node.js environment where the provider URL is the [Filecoin Calibration testnet](/quickstarts/chains/filecoin#filecoin-calibration-testnet). Or, if you wanted to deploy this table to the Filecoin mainnet, you would simply swap out the provider URL (e.g., `https://api.node.glif.io/rpc/v0`). Make sure to replace the private key with your own!
Once you local pinner is set up, you can create a new `Database` instance and create a table. This example shows how you might set it up in a Node.js environment where the provider URL is the [Filecoin Calibration testnet](/quickstarts/chains/filecoin#filecoin-calibration). Or, if you wanted to deploy this table to the Filecoin mainnet, you would simply swap out the provider URL (e.g., `https://api.node.glif.io/rpc/v0`). Make sure to replace the private key with your own!

```js
// Set up wallet & chain connection
Expand Down
66 changes: 5 additions & 61 deletions docs/quickstarts/chains/arbitrum.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ keywords:

Arbitrum is one of the leading EVM-compatible Layer 2 solutions that Tableland currently supports. Check out the overview of what this network is and relevant information when using it, including Arbitrum One vs. Arbitrum Nova.

import { ChainInfo } from '@site/src/components/SupportedChains'
import { ChainSection } from '@site/src/components/SupportedChains'

## Overview

Expand All @@ -25,69 +25,13 @@ Thus, you can imagine how high volume applications can take advantage of both th

## Setup & resources

### Arbitrum One (mainnet)

- Average block time: 2 seconds
- Block depth: 0
- Average SQL materialization time: {'<'}5 seconds
- Chain ID: <ChainInfo chain='arbitrum' info='chainId' />
- Symbol: ETH
- Status Dashboard:
- N/A
- Bridge:
- [https://bridge.arbitrum.io/](https://bridge.arbitrum.io/)
- Block Explorer:
- [https://arbiscan.io](https://arbiscan.io)
- RPC URL:
- See [https://chainlist.org/chain/42161](https://chainlist.org/chain/42161)
- Tableland contract address: <ChainInfo chain='arbitrum' info='contractAddress' />
- SDK network name: <ChainInfo chain='arbitrum' info='chainName' />
- Tableland gateway: <ChainInfo chain='arbitrum' info='baseUrl' />

### Arbitrum Nova (mainnet)

- Average block time: 2 seconds
- Block depth: 0
- Average SQL materialization time: {'<'}5 seconds
- Chain ID: <ChainInfo chain='arbitrum-nova' info='chainId' />
- Symbol: ETH
- Status Dashboard:
- N/A
- Bridge:
- [https://bridge.arbitrum.io/?l2ChainId=42170](https://bridge.arbitrum.io/?l2ChainId=42170)
- Block Explorer:
- [https://nova.arbiscan.io/](https://nova.arbiscan.io/)
- RPC URL:
- See [https://chainlist.org/chain/42170](https://chainlist.org/chain/42170)
- SDK network name: <ChainInfo chain='arbitrum-nova' info='chainName' />
- Tableland gateway: <ChainInfo chain='arbitrum-nova' info='baseUrl' />

### Sepolia (testnet)

- Average block time: 2 seconds
- Block depth: 0
- Average SQL materialization time: {'<'}5 seconds
- Chain ID: <ChainInfo chain='arbitrum-sepolia' info='chainId' />
- Symbol: ETH
- Status Dashboard:
- N/A
- Block Explorer:
- [https://sepolia.arbitrum.io/](https://sepolia.arbitrum.io/)
- Faucet (use the Ethereum Sepolia faucet and then bridge ETH to Arbitrum):
- [https://sepoliafaucet.com/](https://sepoliafaucet.com/)
- [https://faucet.chainstack.com/sepolia-testnet-faucet](https://faucet.chainstack.com/sepolia-testnet-faucet)
- Bridge:
- [https://bridge.arbitrum.io/](https://bridge.arbitrum.io/?l2ChainId=421614)
- RPC URL:
- See [https://chainlist.org/chain/421614](https://chainlist.org/chain/421614)
- Tableland contract address: <ChainInfo chain='arbitrum-sepolia' info='contractAddress' />
- SDK network name: <ChainInfo chain='arbitrum-sepolia' info='chainName' />
- Tableland gateway: <ChainInfo chain='arbitrum-sepolia' info='baseUrl' />
<ChainSection chainName='arbitrum-sepolia' />
<ChainSection chainName='arbitrum' />
<ChainSection chainName='arbitrum-nova' />

## Getting testnet funds

1. Request testnet Ether from a faucet noted above (e.g., [here](https://sepoliafaucet.com/) or [here](https://faucet.chainstack.com/sepolia-testnet-faucet)).
2. Move the ETH from Ethereum to Arbitrum at [https://bridge.arbitrum.io/](https://bridge.arbitrum.io/)—i.e., select "ETH" (or, as in the screenshot below, other ERC20 tokens that exist on Ethereum Sepolia can be bridged).
If you request testnet Ether from a faucet noted above, it should go direct to the testnet. However, you can also request funds from the Ethereum Sepolia testnet and bridge it. You must move the ETH from Ethereum to Arbitrum at the URL listed above—i.e., select "ETH" (or, as in the screenshot below, other ERC20 tokens that exist on Ethereum Sepolia can be bridged).

import bridge from "@site/static/assets/arb-sepolia.png"

Expand Down
48 changes: 3 additions & 45 deletions docs/quickstarts/chains/ethereum.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ keywords:
- ethereum
---

import { ChainInfo } from '@site/src/components/SupportedChains'
import { ChainSection } from '@site/src/components/SupportedChains'

Ethereum and its EVM is what drives Tableland's approach for chain compatibility. With its data and network hardness, it's a great case for many projects, but not all use cases can occur here due to cost and throughput constraints.

Expand All @@ -17,47 +17,5 @@ Because of its security, data can be viewed as more valuable on this chain. A hi

## Setup & resources

### Ethereum (mainnet)

- Average block time: 13.5 seconds
- Block depth: 1
- Average SQL materialization time: 30-40 seconds
- Chain ID: <ChainInfo chain='mainnet' info='chainId' />
- Symbol: ETH
- Status Dashboard:
- [https://ethstats.net/](https://ethstats.net/)
- Block Explorer:
- [https://etherscan.io/](https://etherscan.io/)
- Gas Station:
- [https://etherscan.io/gastracker](https://etherscan.io/gastracker)
- RPC URL:
- See [https://chainlist.org/chain/1](https://chainlist.org/chain/1)
- Tableland contract address: <ChainInfo chain='mainnet' info='contractAddress' />
- SDK network name: <ChainInfo chain='mainnet' info='chainName' /> or <ChainInfo chain='homestead' info='chainName' />
- Tableland gateway: <ChainInfo chain='mainnet' info='baseUrl' />

### Sepolia (testnet)

- Average block time: 13.5 seconds
- Block depth: 1
- Average SQL materialization time: 30-40 seconds
- Chain ID: <ChainInfo chain='sepolia' info='chainId' />
- Symbol: ETH
- Status Dashboard:
- N/A
- Block Explorer:
- [https://sepolia.etherscan.io/](https://sepolia.etherscan.io/)
- Faucet:
- [https://sepoliafaucet.com/](https://sepoliafaucet.com/)
- [https://faucet.paradigm.xyz/](https://faucet.paradigm.xyz/)
- [https://faucet.chainstack.com/sepolia-faucet](https://faucet.chainstack.com/sepolia-faucet)
- RPC URL:
- See [https://chainlist.org/chain/11155111](https://chainlist.org/chain/11155111)
- Tableland contract address: <ChainInfo chain='sepolia' info='contractAddress' />
- SDK network name: <ChainInfo chain='sepolia' info='chainName' />
- Tableland gateway: <ChainInfo chain='sepolia' info='baseUrl' />

#### Getting testnet funds

1. Request testnet Ether from a faucet noted above (e.g., [here](https://sepoliafaucet.com/) or [here](https://faucet.paradigm.xyz/)).
2. Move the ETH from Ethereum to Optimism at [https://app.optimism.io/bridge](https://app.optimism.io/bridge)—i.e., select "ETH" or any other ERC20 tokens that exist on Ethereum Goerli that can be bridged.
<ChainSection chainName='sepolia' />
<ChainSection chainName='mainnet' />
43 changes: 4 additions & 39 deletions docs/quickstarts/chains/filecoin.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ keywords:
- filecoin
---

import { ChainInfo } from '@site/src/components/SupportedChains';
import { ChainSection } from '@site/src/components/SupportedChains'

Filecoin is an EVM-compatible Layer 1 chain that Tableland currently supports. Check out the overview of what this network is and relevant information when using it.

Expand All @@ -26,48 +26,13 @@ From the time an onchain SQL transaction is submitted until it is materialized i

## Setup & resources

### Filecoin (mainnet)

- Average block time: 30s
- Block depth: 5
- Average SQL materialization time: 4 minutes
- Chain ID: 314
- Symbol: FIL
- Status Dashboard:
- [https://status.filecoin.io/](https://status.filecoin.io/)
- Block Explorer:
- [https://filfox.info](https://filfox.info)
- RPC URL: [https://api.node.glif.io/rpc/v0](https://api.node.glif.io/rpc/v0)
- Tableland contract address: <ChainInfo chain='filecoin' info='contractAddress' />
- SDK network name: <ChainInfo chain='filecoin' info='chainName' />
- Tableland gateway: <ChainInfo chain='filecoin' info='baseUrl' />

:::tip
To get FIL into an EVM wallet (e.g., MetaMask), you'll have to buy FIL on an exchange and send it to an f1 address on the Filecoin network. You can use [Glif.io](https://www.glif.io/) to do this, but there's a bit of nuance to the process; you have to create a burner f1 wallet first and then transfer the FIL to the EVM wallet—an f4 address type. See an overview [here](https://www.youtube.com/watch?v=Skim_qHnmjE) for how to do this.
:::

### Filecoin Calibration (testnet)

- Average block time: 30s
- Block depth: 5
- Average SQL materialization time: 4 minutes
- Chain ID: 314159
- Symbol: TFIL
- Status Dashboard:
- [https://stats.calibration.fildev.network/](https://stats.calibration.fildev.network/)
- Block Explorer:
- [https://calibration.filfox.info/en](https://calibration.filfox.info/en)
- Faucet:
- [https://faucet.calibration.fildev.network/](https://faucet.calibration.fildev.network/)
- RPC URL: [https://api.calibration.node.glif.io/rpc/v1](https://api.calibration.node.glif.io/rpc/v1)
- Tableland contract address: <ChainInfo chain='filecoin-calibration' info='contractAddress' />
- SDK network name: <ChainInfo chain='filecoin-calibration' info='chainName' />
- Tableland gateway: <ChainInfo chain='filecoin-calibration' info='baseUrl' />
<ChainSection chainName='filecoin-calibration' />
<ChainSection chainName='filecoin' />

:::caution
Currently, Filecoin Calibration node providers _do not_ store an archive of chain history past the most recent 2000 blocks. This _should not_ have an impact on development if you’re using the primary Tableland node, barring some unforeseen & unlikely downtime of ~17 hours. If you’re a node operator of the Tableland protocol, this _does_ have an impact but will (hopefully) be resolved soon.
:::

#### Getting testnet funds
### Getting testnet funds

Request testnet FIL from the faucet noted above—this should send funds directly to the identified wallet.
14 changes: 3 additions & 11 deletions docs/quickstarts/chains/local.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ keywords:
- hardhat
---

import { ChainInfo } from '@site/src/components/SupportedChains'
import { ChainSection } from '@site/src/components/SupportedChains'

Developing locally should happen as a step prior to deploying to any testnet and/or mainnet. Developers can use Local Tableland to accomplish this, which spins up a Hardhat node for a local Tableland node to use.

Expand All @@ -19,14 +19,6 @@ Local development helps streamline the engineering process through quick iterati
Check out the page about [Local Tableland](/quickstarts/local-tableland) to understand how to set up a local-only environment with both a local Hardhat and Tableland node.
:::

### Local node
### Setup & resources

- Average block time: configurable, but typically 1-2 second
- Block depth: 0
- Average SQL materialization time: 2-3 seconds
- Chain ID: <ChainInfo chain='local-tableland' info='chainId' />
- Symbol: ETH
- RPC URL: http://localhost:8545
- Tableland contract address: <ChainInfo chain='local-tableland' info='contractAddress' />
- SDK network name: <ChainInfo chain='local-tableland' info='chainName' />
- Tableland gateway: <ChainInfo chain='local-tableland' info='baseUrl' />
<ChainSection chainName='local-tableland' />
Loading

0 comments on commit 1fd70e9

Please sign in to comment.