diff --git a/docs/dapp/README.mdx b/docs/dapp/README.mdx index bf8e2f188c..c483db2237 100644 --- a/docs/dapp/README.mdx +++ b/docs/dapp/README.mdx @@ -35,3 +35,65 @@ Sapphire, demonstrates best practices for writing confidential smart contracts and working examples for you to explore and extend. + +# Consensus Layer RPC Endpoints + +:::danger + +The RPC endpoint is a **point of trust**. Beside rate limiting, it can also +perform censorship or even man-in-the-middle attack. If you have security +considerations, we strongly recommend that you [run your own client +node][non-validator-node], + +::: + +[non-validator-node]: ../node/run-your-node/non-validator-node.mdx + +Most dApp developers will build dApps on the ParaTime layer (the *compute* +layer) depicted above. For Sapphire and Emerald which are EVM-compatible chains, +those dApps connect directly to an [EVM-compatible Web3 endpoint][web3]. +However, if you are building a dApp for Cipher or the one that needs to +perform consensus operations such as the consensus-layer token transfers, +governance transactions, cross-chain ParaTime deposits and withdrawals and +similar, you will need to connect to the one of the endpoints speaking +[Oasis gRPC][grpc]. + +Public gRPC endpoints (in alphabetic order): + +| Provider | Mainnet URL | Testnet URL | +|-----------------------------|---------------------|-----------------------------| +| [Oasis Protocol Foundation] | `grpc.oasis.io:443` | `testnet.grpc.oasis.io:443` | + +[Oasis Protocol Foundation]: https://oasisprotocol.org +[web3]: ../node/web3.mdx +[grpc]: ../node/grpc.mdx + +## Consensus Layer Block Explorers + +| Provider | Mainnet URL | Testnet URL | +|-----------------------------|---------------------------|-------------------------------| +| [Bit Cat] | https://www.oasisscan.com | https://testnet.oasisscan.com | +| [Oasis Protocol Foundation] | *Coming soon* | *Coming soon* | + +[Bit Cat]: https://www.bitcat365.com/ + +## Rosetta Endpoints + +| Provider | Mainnet URL | Testnet URL | +|-----------------------------|-------------------------------------------|-------------------------------------------| +| [Oasis Protocol Foundation] | `https://rosetta.oasis.io/api/mainnet/v1` | `https://rosetta.oasis.io/api/testnet/v1` | + + +:::tip + +If you are running your own Oasis client node endpoint, a block explorer or the +Rosetta gateway and you wish to be added to the public list above, open an issue +at [github.com/oasisprotocol/docs]. + +::: + +[github.com/oasisprotocol/docs]: https://github.com/oasisprotocol/docs/issues + +# See also + + diff --git a/docs/dapp/cipher/README.mdx b/docs/dapp/cipher/README.mdx index 2ed7041e1e..561f6c63b6 100644 --- a/docs/dapp/cipher/README.mdx +++ b/docs/dapp/cipher/README.mdx @@ -4,29 +4,32 @@ import {findSidebarItem} from '@site/src/sidebarUtils'; # Cipher ParaTime -The Cipher ParaTime is a Confidential ParaTime for executing Wasm smart contracts. +Cipher is a confidential ParaTime for executing Wasm smart contracts. As the officially supported ParaTime by the Oasis Protocol Foundation, Cipher allows for: -* Flexibility — Developer can define which data to store in a public +* Flexibility: developer can define which data to store in a public and which data in the (more expensive) confidential storage -* Security — Rust language primarily used for writing Wasm smart contracts is - known for its strict memory management and was developed specifically to +* Security: the [rust language] primarily used for writing Wasm smart contracts + is known for its strict memory management and was developed specifically to avoid memory leaks -* Scalability — increased throughput of transactions -* Low-cost — 99%+ lower fees than Ethereum +* Scalability: increased throughput of transactions +* Low-cost: 99%+ lower fees than Ethereum +* 6 second finality (1 block) * Cross-chain bridge to enable cross-chain interoperability (upcoming) If you're looking for EVM-compatible ParaTimes, check out the [Emerald](../emerald/README.mdx) and the confidential [Sapphire](../sapphire/README.mdx) paratimes. -## Smart Contracts Development +[rust language]: https://www.rust-lang.org/ -The Cipher ParaTime implements the [Oasis Contract SDK] API. To learn how to -write a confidential smart contract in Rust and deploy it on the Oasis Cipher -ParaTime, read the related Oasis Contract SDK chapters: +## Smart Contract Development + +Cipher implements the [Oasis Contract SDK] API. To learn how to write a +confidential smart contract in Rust and deploy it on Cipher, read the related +Oasis Contract SDK chapters: +## RPC Endpoints + +:::danger + +The RPC endpoint is a *point of trust*. Beside traffic rate limiting, it can +also perform censorship or even a man-in-the-middle attack. If you have security +considerations, we strongly recommend that you set up your own [ParaTime client +node][paratime-client-node]. + +::: + +Cipher endpoints share the gRPC protocol with the Oasis Core. You can connect to +one of the public endpoints below (in alphabetic order): + +[paratime-client-node]: ../../node/run-your-node/paratime-client-node.mdx + +| Provider | Mainnet RPC URLs | Testnet RPC URLs | +|-----------------------------|---------------------|-----------------------------| +| [Oasis Protocol Foundation] | `grpc.oasis.io:443` | `testnet.grpc.oasis.io:443` | + +[Oasis Protocol Foundation]: https://oasisprotocol.org + +## Block Explorers + +No block explorers are available for Cipher yet. Consider debugging the Cipher +blocks using the [`oasis paratime show`] command in [Oasis CLI]. + +[`oasis paratime show`]: ../../general/manage-tokens/cli/paratime.md#show +[Oasis CLI]: ../../general/manage-tokens/cli/README.md + +:::tip + +If you are running your own Cipher endpoint and you wish to be added to the +public list above, open an issue at [github.com/oasisprotocol/docs]. + +::: + +[github.com/oasisprotocol/docs]: https://github.com/oasisprotocol/docs + ## See also { - if (!window.ethereum?.request) { - return alert('Have you installed MetaMask yet? If not, please do so.\n\nComputer: Once it is installed, you will be able to add the ParaTime to your MetaMask.\n\nPhone: Open the website through your MetaMask Browser to add the ParaTime.') - } - window.ethereum.request({ - method: 'wallet_addEthereumChain', - params: [ - { - chainId: '0xa516', - chainName: 'Oasis Emerald', - nativeCurrency: { - name: 'Emerald Rose', - symbol: 'ROSE', - decimals: 18, - }, - rpcUrls: ['https://emerald.oasis.dev', 'wss://emerald.oasis.dev/ws'], - blockExplorerUrls: ['https://explorer.emerald.oasis.dev'], - }, - ], - }) - }} -> - Click here to register Emerald Mainnet to your MetaMask or Brave Wallet - +The RPC endpoint is a *point of trust*. Beside traffic rate limiting, it can +also perform censorship or even a man-in-the-middle attack. If you have security +considerations, we strongly recommend that you set up your own [ParaTime client +node][paratime-client-node] and the [Web3-compatible gateway]. -### Testnet +::: + + +[Web3-compatible gateway]: ../../node/web3.mdx +[paratime-client-node]: ../../node/run-your-node/paratime-client-node.mdx + +You can connect to one of the public Web3 gateways below (in alphabetic order): + +| Provider | Mainnet RPC URLs | Testnet RPC URLs | +|-----------------------------|-------------------------------------------------------------------------|------------------------------------------------------------------------------------------| +| [1RPC] | | N/A | +| [Oasis Protocol Foundation] | | | + +[Oasis Protocol Foundation]: https://oasisprotocol.org + +Public RPCs may have rate limits or traffic restrictions. For professional, +dedicated RPC endpoints, consider the following providers (in alphabetic order): + +| Provider | Instructions | Pricing | +|---------------------------|---------------------------|-------------------------| +| [1RPC] | [docs.1rpc.io][1RPC-docs] | [Pricing][1RPC-pricing] | + + +[1RPC]: https://www.1rpc.io/ +[1RPC-docs]: https://docs.1rpc.io/guide/how-to-use-1rpc +[1RPC-pricing]: https://www.1rpc.io/#pricing + +## Block Explorers + +| Provider | Mainnet URL | Testnet URL | EIP-3091 compatible | +|-----------------------------|-------------------------------------------|-------------------------------------------|---------------------| +| [Oasis Protocol Foundation] | https://explorer.oasis.io/mainnet/emerald | https://explorer.oasis.io/testnet/emerald | Yes | + +:::tip + +If you are running your own Emerald endpoint or a block explorer, and you wish +to be added to the public list above, open an issue at +[github.com/oasisprotocol/docs]. -* RPC HTTP endpoint: `https://testnet.emerald.oasis.dev` -* RPC WebSockets endpoint: `wss://testnet.emerald.oasis.dev/ws` -* Chain ID: - * Hex: 0xa515 - * Decimal: 42261 -* Block explorer: [https://testnet.explorer.emerald.oasis.dev](https://testnet.explorer.emerald.oasis.dev) - - +::: +[github.com/oasisprotocol/docs]: https://github.com/oasisprotocol/docs ## See also diff --git a/docs/dapp/emerald/integrating-band-oracle-smart-contract.md b/docs/dapp/emerald/integrating-band-oracle-smart-contract.md index 16f861e0b7..dcbe88855f 100644 --- a/docs/dapp/emerald/integrating-band-oracle-smart-contract.md +++ b/docs/dapp/emerald/integrating-band-oracle-smart-contract.md @@ -44,7 +44,7 @@ The `savePrice` function will save any base/quote rate that is passed to it in t ### Mainnet Reference Data Contract -You can access the reference data aggregator contract on mainnet at [0xDA7a001b254CD22e46d3eAB04d937489c93174C3](https://explorer.emerald.oasis.dev/address/0xDA7a001b254CD22e46d3eAB04d937489c93174C3/transactions). +You can access the reference data aggregator contract on Mainnet at [0xDA7a001b254CD22e46d3eAB04d937489c93174C3](https://explorer.oasis.io/mainnet/emerald/address/0xDA7a001b254CD22e46d3eAB04d937489c93174C3). ### Available Reference Data diff --git a/docs/dapp/emerald/writing-dapps-on-emerald.mdx b/docs/dapp/emerald/writing-dapps-on-emerald.mdx index 116b4b8309..da29b0cc2a 100644 --- a/docs/dapp/emerald/writing-dapps-on-emerald.mdx +++ b/docs/dapp/emerald/writing-dapps-on-emerald.mdx @@ -41,7 +41,7 @@ ParaTime][how-to-deposit-rose] chapter to learn more. [Ed25519]: https://en.wikipedia.org/wiki/EdDSA#Ed25519 [ECDSA]: https://en.wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm [how-to-deposit-rose]: ../../general/manage-tokens/how-to-transfer-rose-into-paratime.mdx -[Testnet faucet]: https://faucet.testnet.oasis.dev/ +[Testnet faucet]: https://faucet.testnet.oasis.io/ ## Testnet and Mainnet @@ -231,12 +231,12 @@ networks: { process.env.PRIVATE_KEY !== undefined ? [process.env.PRIVATE_KEY] : [], }, emerald_testnet: { - url: "https://testnet.emerald.oasis.dev", + url: "https://testnet.emerald.oasis.io", accounts: process.env.PRIVATE_KEY !== undefined ? [process.env.PRIVATE_KEY] : [], }, emerald_mainnet: { - url: "https://emerald.oasis.dev", + url: "https://emerald.oasis.io", accounts: process.env.PRIVATE_KEY !== undefined ? [process.env.PRIVATE_KEY] : [], }, @@ -433,7 +433,7 @@ error description, for example: -[mainnet-explorer]: https://explorer.emerald.oasis.dev -[testnet-explorer]: https://testnet.explorer.emerald.oasis.dev +[mainnet-explorer]: https://explorer.oasis.io/mainnet/emerald +[testnet-explorer]: https://explorer.oasis.io/testnet/emerald [mainnet-oasisscan]: https://oasisscan.com [testnet-oasisscan]: https://testnet.oasisscan.com diff --git a/docs/dapp/opl/build.md b/docs/dapp/opl/build.md index 5fd1157561..c5920ed90a 100644 --- a/docs/dapp/opl/build.md +++ b/docs/dapp/opl/build.md @@ -90,7 +90,7 @@ index cd8df42..0875e8e 100644 + accounts, + }, + 'sapphire-testnet': { -+ url: 'https://testnet.sapphire.oasis.dev', ++ url: 'https://testnet.sapphire.oasis.io', + chainId: 0x5aff, + accounts, + }, @@ -131,7 +131,7 @@ We can likewise deploy to [Testnet](../../dapp/sapphire/guide#testnet-and-mainne with Sapphire. In this case, we should prepare a wallet with Testnet tokens on both BNB Smart -Chain [Faucet](https://testnet.bnbchain.org/faucet-smart) and Sapphire [faucet](https://faucet.testnet.oasis.dev). +Chain [Faucet](https://testnet.bnbchain.org/faucet-smart) and Sapphire [faucet](https://faucet.testnet.oasis.io). We will use a common private key for both the host and enclave smart contracts. diff --git a/docs/dapp/sapphire/README.mdx b/docs/dapp/sapphire/README.mdx index 4a2b0e858b..7aac65f0eb 100644 --- a/docs/dapp/sapphire/README.mdx +++ b/docs/dapp/sapphire/README.mdx @@ -1,10 +1,11 @@ import DocCardList from '@theme/DocCardList'; import {findSidebarItem} from '@site/src/sidebarUtils'; +import {AddSapphireToMetaMask as S, AddSapphireTestnetToMetaMask as ST} from '@site/src/AddToMetaMask'; # Sapphire ParaTime -The Sapphire ParaTime is our official confidential EVM Compatible ParaTime -providing a smart contract development environment with EVM compatibility. +Sapphire is our official confidential ParaTime providing a smart contract +development environment with [Ethereum Virtual Machine (EVM)] compatibility. As the official confidential EVM-compatible ParaTime on the Oasis Network, Sapphire allows for: @@ -13,8 +14,8 @@ Sapphire allows for: * EVM compatibility * Easy integration with EVM-based dApps, such as DeFi, NFT, Metaverse and crypto gaming -* Scalability — increased throughput of transactions -* Low-cost — 99%+ lower fees than Ethereum +* Scalability: increased throughput of transactions +* Low-cost: 99%+ lower fees than Ethereum * 6 second finality (1 block) * Cross-chain bridge to enable cross-chain interoperability (upcoming) @@ -22,82 +23,80 @@ If you are not bound to EVM and you wish to develop dApps with more fine-grained confidentiality, check out the [Cipher ParaTime](../cipher/README.mdx). -## Web3 Gateway +[Ethereum Virtual Machine (EVM)]: https://ethereum.org/en/developers/docs/evm/ -To get started building on our Sapphire ParaTime, you can use our public Web3 -gateway, fully compatible with Ethereum's Web3 gateway. +## Chain Information ### Mainnet -* RPC HTTP endpoint: `https://sapphire.oasis.io` -* RPC WebSockets endpoint: `wss://sapphire.oasis.io/ws` -* Chain ID: - * Hex: 0x5afe - * Decimal: 23294 -* Block explorer: [https://explorer.sapphire.oasis.io](https://explorer.sapphire.oasis.io) - - +- Network name: `sapphire` +- Long network name: `Oasis Sapphire` +- Chain ID: + - Hex: `0x5afe` + - Decimal: `23294` ### Testnet -* RPC HTTP endpoint: `https://testnet.sapphire.oasis.dev` -* RPC WebSockets endpoint: `wss://testnet.sapphire.oasis.dev/ws` -* Chain ID: - * Hex: 0x5aff - * Decimal: 23295 -* Block explorer: [https://testnet.explorer.sapphire.oasis.dev](https://testnet.explorer.sapphire.oasis.dev) - - +- Network name: `sapphire-testnet` +- Long network name: `Oasis Sapphire Testnet` +- Chain ID: + - Hex: `0x5aff` + - Decimal: `23295` + +## RPC Endpoints + +:::danger + +The RPC endpoint is a *point of trust*. Beside traffic rate limiting, it can +also perform censorship or even a man-in-the-middle attack. If you have security +considerations, we strongly recommend that you set up your own [ParaTime client +node][paratime-client-node] and the [Web3-compatible gateway]. + +::: + +[Web3-compatible gateway]: ../../node/web3.mdx +[paratime-client-node]: ../../node/run-your-node/paratime-client-node.mdx + +You can connect to one of the public Web3 gateways below (in alphabetic order): + +| Provider | Mainnet RPC URLs | Testnet RPC URLs | Supports Confidential Queries | +|-----------------------------|-------------------------------------------------------------------------|--------------------------------------------------------------------------------------------|-------------------------------| +| [1RPC] | | N/A | Yes | +| [Oasis Protocol Foundation] | | | Yes | + +[Oasis Protocol Foundation]: https://oasisprotocol.org + +Public RPCs may have rate limits or traffic restrictions. For professional, +dedicated RPC endpoints, consider the following providers (in alphabetic order): + +| Provider | Instructions | Pricing | Supports Confidential Queries | +|--------------|----------------------------------------|-------------------------------|-------------------------------| +| [1RPC] | [docs.1rpc.io][1RPC-docs] | [Pricing][1RPC-pricing] | Yes | +| [Chainstack] | [docs.chainstack.com][Chainstack-docs] | [Pricing][Chainstack-pricing] | Yes | + + +[1RPC]: https://www.1rpc.io/ +[1RPC-docs]: https://docs.1rpc.io/guide/how-to-use-1rpc +[1RPC-pricing]: https://www.1rpc.io/#pricing +[Chainstack]: https://chainstack.com/build-better-with-oasis-sapphire/ +[Chainstack-docs]: https://docs.chainstack.com/docs/oasis-sapphire-tooling +[Chainstack-pricing]: https://chainstack.com/pricing/ + +## Block Explorers + +| Provider | Mainnet URL | Testnet URL | EIP-3091 compatible | +|-----------------------------|--------------------------------------------|--------------------------------------------|---------------------| +| [Oasis Protocol Foundation] | https://explorer.oasis.io/mainnet/sapphire | https://explorer.oasis.io/testnet/sapphire | Yes | + +:::tip + +If you are running your own Sapphire endpoint or a block explorer, and you wish +to be added to the public list above, open an issue at +[github.com/oasisprotocol/docs]. + +::: + +[github.com/oasisprotocol/docs]: https://github.com/oasisprotocol/docs ## See also diff --git a/docs/general/manage-tokens/how-to-transfer-eth-erc20-to-emerald-paratime.md b/docs/general/manage-tokens/how-to-transfer-eth-erc20-to-emerald-paratime.md index c3ac37957f..5584782b4e 100644 --- a/docs/general/manage-tokens/how-to-transfer-eth-erc20-to-emerald-paratime.md +++ b/docs/general/manage-tokens/how-to-transfer-eth-erc20-to-emerald-paratime.md @@ -93,6 +93,6 @@ Now you can start using that wrapped assets across new Oasis dApps like the firs :::info Make sure that your MetaMask is connected to the Emerald Mainnet chain. You -can find the network parameters [here](../../dapp/emerald/README.mdx#web3-gateway). +can find the network parameters [here](../../dapp/emerald/README.mdx#rpc-endpoints). ::: diff --git a/docs/general/manage-tokens/how-to-transfer-rose-into-paratime.mdx b/docs/general/manage-tokens/how-to-transfer-rose-into-paratime.mdx index a74ed206af..5e31d374b3 100644 --- a/docs/general/manage-tokens/how-to-transfer-rose-into-paratime.mdx +++ b/docs/general/manage-tokens/how-to-transfer-rose-into-paratime.mdx @@ -158,8 +158,8 @@ For EVM-compatible ParaTimes, you can as well verify the balance in [Metamask](https://metamask.io) or a built-in wallet in the Brave browser: 1. Install the Metamask extension to your browser. -2. Add the corresponding [Sapphire](/dapp/sapphire/#web3-gateway) and/or - [Emerald](/dapp/emerald/#web3-gateway) networks to Metamask. You can either +2. Add the corresponding [Sapphire](/dapp/sapphire/#rpc-endpoints) and/or + [Emerald](/dapp/emerald/#rpc-endpoints) networks to Metamask. You can either click on the "Click here to register..." buttons following the links above or enter the network details manually. @@ -236,7 +236,7 @@ destination consensus address, and **amount** of ROSE transferred. Be aware that the [Oasis Scan Blockchain Explorer](https://www.oasisscan.com) is built for consensus layer. If you want to explore Sapphire (0x addresses, Token Transfers, Contract Calls, etc.), you have to use the -[Sapphire Blockchain Explorer](https://explorer.sapphire.oasis.dev). +[Sapphire Blockchain Explorer](https://explorer.oasis.io/mainnet/sapphire). ::: diff --git a/docs/general/oasis-network/token-metrics-and-distribution.mdx b/docs/general/oasis-network/token-metrics-and-distribution.mdx index 7ea22d352d..95b22c56f8 100644 --- a/docs/general/oasis-network/token-metrics-and-distribution.mdx +++ b/docs/general/oasis-network/token-metrics-and-distribution.mdx @@ -1,6 +1,6 @@ -import FinalDistributionPieChart from './token_distribution/pie/Chart.tsx'; -import TokenDistributionChart from './token_distribution/Chart.tsx'; -import StakingRewardsChart from './staking_rewards/Chart.tsx'; +import FinalDistributionPieChart from '@site/src/token_distribution/pie/Chart.tsx'; +import TokenDistributionChart from '@site/src/token_distribution/Chart.tsx'; +import StakingRewardsChart from '@site/src/staking_rewards/Chart.tsx'; # Token Metrics and Distribution @@ -50,7 +50,7 @@ The remaining allocations will be disbursed according to the following release s -Alternative formats: [CSV](./token_distribution/data.csv) +Alternative formats: [CSV](../../../src/token_distribution/data.csv), [JSON](../../../src/token_distribution/data.json) ## Fundraising History @@ -72,7 +72,7 @@ Given the Oasis Network’s founding vision to become a world-class, public, per -Alternative formats: [CSV](./staking_rewards/data.csv) +Alternative formats: [CSV](../../../src/staking_rewards/data.csv), [JSON](../../../src/staking_rewards/data.json) ## Delegation Policy diff --git a/docs/get-involved/run-node/paratime-node.mdx b/docs/get-involved/run-node/paratime-node.mdx index 58b3dcc62c..b4e6413a64 100644 --- a/docs/get-involved/run-node/paratime-node.mdx +++ b/docs/get-involved/run-node/paratime-node.mdx @@ -49,7 +49,7 @@ the use of EVM smart contracts on the Oasis network. * **Testnet Launch Date:** July 2022 * **Mainnet Launch Date:** Dec 2022 * **Discord Channel:** [#node-operators][connect-with-us] -* **Requires SGX:** yes +* **Requires SGX:** Yes * **Parameters:** * [Mainnet](../../node/mainnet/README.md#sapphire) * [Testnet](../../node/testnet/README.md#sapphire) @@ -136,17 +136,6 @@ committee on Mainnet, your entity needs to: - Have a validator in the **validator set**. -### Rewards - -* The ParaTime will release tokens on-chain to reward nodes for participation. -* The reward program is 2 years long, and tokens will be released per epoch. -* The reward will be 10\~20 ROSE tokens per entity per epoch, where the Oasis - Protocol Foundation will make the final decision on the reward size upon the - Cipher's Mainnet launch. -* Incentivized Testnet with ROSE tokens delegated by the Oasis Protocol - Foundation to Testnet participants based on performance (rewards can be found - [here](https://oasis-foundation.medium.com/oasis-cipher-paratime-c9f40ae64946)). - diff --git a/docs/node/mainnet/README.md b/docs/node/mainnet/README.md index ffa7f86eac..56ce302b4d 100644 --- a/docs/node/mainnet/README.md +++ b/docs/node/mainnet/README.md @@ -1,5 +1,7 @@ # Mainnet +## Network Parameters + These are the current parameters for the Mainnet: * [Genesis file](https://github.com/oasisprotocol/mainnet-artifacts/releases/download/2023-11-29/genesis.json): @@ -7,7 +9,8 @@ These are the current parameters for the Mainnet: :::info -Genesis file is signed by [network's current maintainers](https://github.com/oasisprotocol/mainnet-artifacts/blob/master/README.md#pgp-keys-of-current-maintainers). To verify its authenticity, follow the [PGP verification instructions](https://github.com/oasisprotocol/mainnet-artifacts/blob/master/README.md#verifying-genesis-file-signatures). +Genesis file is signed by [network's current maintainers]. To verify its +authenticity, follow the [PGP verification instructions]. ::: @@ -36,11 +39,16 @@ The Oasis Node is part of the Oasis Core release. :::danger -Do not use a newer version of Oasis Core since it likely contains changes that are incompatible with the version of Oasis Core used by other nodes. +Do not use a newer version of Oasis Core since it likely contains changes that +are incompatible with the version of Oasis Core used by other nodes. ::: -If you want to join our Testnet, see the [Testnet](../testnet/README.md) docs for the current Testnet parameters. +If you want to join our Testnet, see the [Testnet](../testnet/README.md) docs +for the current Testnet parameters. + +[network's current maintainers]: https://github.com/oasisprotocol/mainnet-artifacts/blob/master/README.md#pgp-keys-of-current-maintainers +[PGP verification instructions]: https://github.com/oasisprotocol/mainnet-artifacts/blob/master/README.md#verifying-genesis-file-signatures ## ParaTimes @@ -60,7 +68,8 @@ This section contains parameters for various ParaTimes known to be deployed on t :::tip -Feel free to use other IAS proxies besides the one provided here or [run your own](../../node/run-your-node/ias-proxy.md). +Feel free to use other IAS proxies besides the one provided here or +[run your own](../../node/run-your-node/ias-proxy.md). ::: @@ -77,7 +86,8 @@ Feel free to use other IAS proxies besides the one provided here or [run your ow :::info -Check the [Emerald ParaTime page](/dapp/emerald/#web3-gateway) on how to access the public Web3 gateway. +Check the [Emerald ParaTime page](/dapp/emerald/#rpc-endpoints) on how to access +the public Web3 endpoint. ::: @@ -97,7 +107,8 @@ Check the [Emerald ParaTime page](/dapp/emerald/#web3-gateway) on how to access :::tip -Feel free to use other IAS proxies besides the one provided here or [run your own](../../node/run-your-node/ias-proxy.md). +Feel free to use other IAS proxies besides the one provided here or +[run your own](../../node/run-your-node/ias-proxy.md). ::: @@ -115,6 +126,7 @@ Feel free to use other IAS proxies besides the one provided here or [run your ow :::tip -Feel free to use other IAS proxies besides the one provided here or [run your own](../../node/run-your-node/ias-proxy.md). +Feel free to use other IAS proxies besides the one provided here or +[run your own](../../node/run-your-node/ias-proxy.md). ::: diff --git a/docs/node/mainnet/upgrade-log.md b/docs/node/mainnet/upgrade-log.md index 4ee3de1495..bd2320dfce 100644 --- a/docs/node/mainnet/upgrade-log.md +++ b/docs/node/mainnet/upgrade-log.md @@ -395,7 +395,7 @@ If the previous behavior is required, the binary must be run in unsafe/debug mode (via the intentionally undocumented flag), and `debug.allow_root` must also be set. -[change-to-non-root]: ../run-your-node/prerequisites/system-configuration.mdx#change-to-non-root +[change-to-non-root]: ../run-your-node/prerequisites/system-configuration.mdx#create-a-user ### Instructions - Upgrade day @@ -753,7 +753,7 @@ oasis-node consensus submit_tx \ * This upgrade will upgrade **Oasis Core** to version **21.2.8** which: * Upgrades the BadgerDB database backend from v2 to v3. See [**BadgerDB v2 to v3 Migration**](upgrade-log.md#badgerdb-v2-to-v3-migration) section for required steps to be done before upgrade. - * Has a check that makes sure the **file descriptor limit** is set to an appropriately high value (at least 50000). While previous versions only warned in case the limit was set too low, this version will refuse to start. Follow the [File Descriptor Limit](../run-your-node/prerequisites/system-configuration.mdx#file-descriptor-limit) documentation page for details on how to increase the limit on your system. + * Has a check that makes sure the **file descriptor limit** is set to an appropriately high value (at least 50000). While previous versions only warned in case the limit was set too low, this version will refuse to start. Follow the [File Descriptor Limit](../run-your-node/prerequisites/system-configuration.mdx#increase-file-descriptor-limit) documentation page for details on how to increase the limit on your system. * Stop your node, replace the old version of Oasis Node with version [21.2.8](https://github.com/oasisprotocol/oasis-core/releases/tag/v21.2.8) and restart your node. :::tip diff --git a/docs/node/run-your-node/advanced/remote-signer.mdx b/docs/node/run-your-node/advanced/remote-signer.mdx index 62a651b4ff..786dfb2c5c 100644 --- a/docs/node/run-your-node/advanced/remote-signer.mdx +++ b/docs/node/run-your-node/advanced/remote-signer.mdx @@ -139,7 +139,7 @@ We recommend you configure and use it with a process manager like [systemd] or [systemd]: https://github.com/systemd/systemd [Supervisor]: http://supervisord.org -[System Configuration]: ../prerequisites/system-configuration.mdx#change-to-non-root +[System Configuration]: ../prerequisites/system-configuration.mdx#create-a-user ### Copy Remote Signer Certificate, Client Key and Certificate diff --git a/docs/node/run-your-node/advanced/sync-node-using-state-sync.md b/docs/node/run-your-node/advanced/sync-node-using-state-sync.md index 6b81b92c45..7e5218a3c4 100644 --- a/docs/node/run-your-node/advanced/sync-node-using-state-sync.md +++ b/docs/node/run-your-node/advanced/sync-node-using-state-sync.md @@ -131,7 +131,7 @@ Query our public Rosetta Gateway instance and obtain the trusted height and hash there (replace the `` with the value obtained in the previous step): ```bash -curl -X POST https://rosetta.oasis.dev/api/block \ +curl -X POST https://rosetta.oasis.io/api/block \ -H "Content-Type: application/json" \ -d '{ "network_identifier": { diff --git a/docs/node/run-your-node/prerequisites/oasis-node.md b/docs/node/run-your-node/prerequisites/oasis-node.md index 61885b1a4f..6d1b1b6bfe 100644 --- a/docs/node/run-your-node/prerequisites/oasis-node.md +++ b/docs/node/run-your-node/prerequisites/oasis-node.md @@ -12,7 +12,7 @@ The Oasis Node is currently only supported on x86_64 Linux systems. [Oasis Core]: https://github.com/oasisprotocol/oasis-core [`go/`]: https://github.com/oasisprotocol/oasis-core/tree/master/go -[roles]: ../../README.mdx#node-roles +[roles]: ../../README.mdx#validator-and-paratime-nodes ## Set up the Oasis Node's Working Directory diff --git a/docs/node/run-your-node/prerequisites/stake-requirements.md b/docs/node/run-your-node/prerequisites/stake-requirements.md index 677d294cd5..067d53e83d 100644 --- a/docs/node/run-your-node/prerequisites/stake-requirements.md +++ b/docs/node/run-your-node/prerequisites/stake-requirements.md @@ -55,5 +55,5 @@ number of TEST by using our [Oasis Network Testnet Faucet][faucet-testnet]. For more tokens please contact us at our official [Discord #testnet channel][discord-testnet]. -[faucet-testnet]: https://faucet.testnet.oasis.dev/ +[faucet-testnet]: https://faucet.testnet.oasis.io/ [discord-testnet]: https://oasis.io/discord diff --git a/docs/node/run-your-node/validator-node.mdx b/docs/node/run-your-node/validator-node.mdx index 63711571e5..0c0326605e 100644 --- a/docs/node/run-your-node/validator-node.mdx +++ b/docs/node/run-your-node/validator-node.mdx @@ -280,7 +280,7 @@ fully implemented, keep the keys on the `server` as secure as possible. ::: -[System Configuration]: prerequisites/system-configuration.mdx#change-to-non-root +[System Configuration]: prerequisites/system-configuration.mdx#create-a-user ### Ensuring Proper Permissions diff --git a/docs/node/testnet/README.md b/docs/node/testnet/README.md index 7f52c69e3e..4300968c1f 100644 --- a/docs/node/testnet/README.md +++ b/docs/node/testnet/README.md @@ -17,7 +17,7 @@ confidential ParaTimes. :::info -On the Testnet, TEST tokens are in use -- if you need some to test your clients, nodes or paratimes, feel free to use our [Testnet Faucet](https://faucet.testnet.oasis.dev). Note that these are test-only tokens and account balances, as any other state, may be frequently reset. +On the Testnet, TEST tokens are in use -- if you need some to test your clients, nodes or paratimes, feel free to use our [Testnet Faucet](https://faucet.testnet.oasis.io). Note that these are test-only tokens and account balances, as any other state, may be frequently reset. ::: diff --git a/docs/node/testnet/upgrade-log.md b/docs/node/testnet/upgrade-log.md index a361e825f7..bdbc26bb98 100644 --- a/docs/node/testnet/upgrade-log.md +++ b/docs/node/testnet/upgrade-log.md @@ -710,7 +710,7 @@ The [Oasis Core 21.2.8](https://github.com/oasisprotocol/oasis-core/releases/tag ### Instructions - Before Upgrade System Preparation * This upgrade will upgrade **Oasis Core** to version **21.2.8** which: - * Has a check that makes sure the **file descriptor limit** is set to an appropriately high value (at least 50000). While previous versions only warned in case the limit was set too low, this version will refuse to start. Follow the [File Descriptor Limit](../run-your-node/prerequisites/system-configuration.mdx#file-descriptor-limit) documentation page for details on how to increase the limit on your system. + * Has a check that makes sure the **file descriptor limit** is set to an appropriately high value (at least 50000). While previous versions only warned in case the limit was set too low, this version will refuse to start. Follow the [File Descriptor Limit](../run-your-node/prerequisites/system-configuration.mdx#increase-file-descriptor-limit) documentation page for details on how to increase the limit on your system. * Stop your node, replace the old version of Oasis Node with version [21.2.8](https://github.com/oasisprotocol/oasis-core/releases/tag/v21.2.8) and restart your node. :::tip diff --git a/docs/node/web3.mdx b/docs/node/web3.mdx index e3b7e2da49..251ac03192 100644 --- a/docs/node/web3.mdx +++ b/docs/node/web3.mdx @@ -271,7 +271,7 @@ extended downtime while the Web3 Gateway is reindexing the blocks. [README.md]: https://github.com/oasisprotocol/oasis-web3-gateway/blob/main/README.md#building-and-testing [Sapphire]: ../dapp/sapphire/README.mdx [sapphire-testnet]: ../dapp/sapphire/README.mdx#testnet -[system service]: run-your-node/prerequisites/system-configuration.mdx#non-root +[system service]: run-your-node/prerequisites/system-configuration.mdx#create-a-user [Testnet]: testnet/README.md [testnet-emerald]: testnet/README.md#emerald [testnet-sapphire]: testnet/README.md#sapphire diff --git a/docusaurus.config.ts b/docusaurus.config.ts index d7b5c00aa7..8cb2a78659 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -23,6 +23,9 @@ const config: Config = { locales: ['en'], }, + onBrokenAnchors: 'throw', + onBrokenMarkdownLinks: 'throw', + presets: [ [ 'classic', @@ -91,7 +94,7 @@ const config: Config = { src: 'img/logo.png', // Uncomment src and style below to enable christmas mode ;) //src: 'img/logo_christmas.png', - //style: {height: '48px', 'max-width': '58px', 'margin-top': '-15px', 'margin-left': '-15px'}, + //style: {height: '48px', maxWidth: '58px', marginTop: '-15px', marginLeft: '-15px'}, }, items: [ { @@ -174,7 +177,7 @@ const config: Config = { items: [ { label: 'Testnet Faucet', - to: 'https://faucet.testnet.oasis.dev/', + to: 'https://faucet.testnet.oasis.io/', }, { label: 'Playground', diff --git a/external/sapphire-paratime b/external/sapphire-paratime index 94dd75ba71..06fe637127 160000 --- a/external/sapphire-paratime +++ b/external/sapphire-paratime @@ -1 +1 @@ -Subproject commit 94dd75ba71061982ec46f4ad43fe0f2400885050 +Subproject commit 06fe6371272f681e1f0d7526e1e14223a1784c21 diff --git a/src/AddToMetaMask.tsx b/src/AddToMetaMask.tsx new file mode 100644 index 0000000000..a1605dc540 --- /dev/null +++ b/src/AddToMetaMask.tsx @@ -0,0 +1,91 @@ +import React from 'react'; + +const AddToMetaMask = (props: { + name: string, + chainId: string, + token: string, + rpcs: string[], + be: string[], +}) => { + return ( + + {props.rpcs.map(item => ( + {item}
+ ))} + +
+ ); +}; + +export const AddSapphireToMetaMask = (props: { + rpcs: string[], +}) => { + return AddToMetaMask({ + name: 'Oasis Sapphire', + chainId: '0x5afe', + token: 'ROSE', + rpcs: props.rpcs, + be: ['https://explorer.oasis.io/mainnet/sapphire'], + }); +}; + +export const AddSapphireTestnetToMetaMask = (props: { + rpcs: string[], +}) => { + return AddToMetaMask({ + name: 'Oasis Sapphire Testnet', + chainId: '0x5aff', + token: 'TEST', + rpcs: props.rpcs, + be: ['https://explorer.oasis.io/testnet/sapphire'], + }); +}; + +export const AddEmeraldToMetaMask = (props: { + rpcs: string[], +}) => { + return AddToMetaMask({ + name: 'Oasis Emerald', + chainId: '0xa516', + token: 'ROSE', + rpcs: props.rpcs, + be: ['https://explorer.oasis.io/mainnet/emerald'], + }); +}; + +export const AddEmeraldTestnetToMetaMask = (props: { + rpcs: string[], +}) => { + return AddToMetaMask({ + name: 'Oasis Emerald Testnet', + chainId: '0xa515', + token: 'TEST', + rpcs: props.rpcs, + be: ['https://explorer.oasis.io/testnet/emerald'], + }); +}; diff --git a/docs/general/oasis-network/staking_rewards/Chart.tsx b/src/staking_rewards/Chart.tsx similarity index 100% rename from docs/general/oasis-network/staking_rewards/Chart.tsx rename to src/staking_rewards/Chart.tsx diff --git a/docs/general/oasis-network/staking_rewards/data.csv b/src/staking_rewards/data.csv similarity index 100% rename from docs/general/oasis-network/staking_rewards/data.csv rename to src/staking_rewards/data.csv diff --git a/docs/general/oasis-network/staking_rewards/data.json b/src/staking_rewards/data.json similarity index 100% rename from docs/general/oasis-network/staking_rewards/data.json rename to src/staking_rewards/data.json diff --git a/docs/general/oasis-network/staking_rewards/fallback.svg b/src/staking_rewards/fallback.svg similarity index 100% rename from docs/general/oasis-network/staking_rewards/fallback.svg rename to src/staking_rewards/fallback.svg diff --git a/docs/general/oasis-network/token_distribution/Chart.tsx b/src/token_distribution/Chart.tsx similarity index 100% rename from docs/general/oasis-network/token_distribution/Chart.tsx rename to src/token_distribution/Chart.tsx diff --git a/docs/general/oasis-network/token_distribution/data.csv b/src/token_distribution/data.csv similarity index 100% rename from docs/general/oasis-network/token_distribution/data.csv rename to src/token_distribution/data.csv diff --git a/docs/general/oasis-network/token_distribution/data.json b/src/token_distribution/data.json similarity index 100% rename from docs/general/oasis-network/token_distribution/data.json rename to src/token_distribution/data.json diff --git a/docs/general/oasis-network/token_distribution/fallback.svg b/src/token_distribution/fallback.svg similarity index 100% rename from docs/general/oasis-network/token_distribution/fallback.svg rename to src/token_distribution/fallback.svg diff --git a/docs/general/oasis-network/token_distribution/monthly_data.json b/src/token_distribution/monthly_data.json similarity index 100% rename from docs/general/oasis-network/token_distribution/monthly_data.json rename to src/token_distribution/monthly_data.json diff --git a/docs/general/oasis-network/token_distribution/pie/Chart.tsx b/src/token_distribution/pie/Chart.tsx similarity index 100% rename from docs/general/oasis-network/token_distribution/pie/Chart.tsx rename to src/token_distribution/pie/Chart.tsx diff --git a/docs/general/oasis-network/token_distribution/pie/fallback.svg b/src/token_distribution/pie/fallback.svg similarity index 100% rename from docs/general/oasis-network/token_distribution/pie/fallback.svg rename to src/token_distribution/pie/fallback.svg