From 80d91a54b47b2feb72a779c2077e6f2ba35ef9c3 Mon Sep 17 00:00:00 2001 From: Slava Karkunov Date: Fri, 20 Dec 2024 13:10:14 +0000 Subject: [PATCH] Fix *___ -> *_ --- blog/aurora-chains-demo.md | 8 +- blog/aurora-cloud-borealis-business.md | 16 ++-- blog/demystifying-transaction-failures.md | 12 +-- blog/getting-started-with-aurora.md | 44 +++++----- ...o-get-your-tokens-from-bastion-contract.md | 14 ++-- ...ow-to-get-usdc-tokens-on-aurora-testnet.md | 28 +++---- blog/practical-erc20-burning.md | 14 ++-- blog/spinning-up-your-own-aurora-node.md | 6 +- docs/dev-tools/basics/hardhat.md | 4 +- docs/dev-tools/basics/metamask.md | 8 +- docs/dev-tools/cloud/aurora-chains.md | 12 +-- docs/dev-tools/cloud/aurora-pass.md | 10 +-- docs/dev-tools/cloud/borealis-business.md | 16 ++-- docs/dev-tools/indexers/covalent.md | 54 ++++++------ docs/dev-tools/indexers/flair.md | 38 ++++----- docs/dev-tools/indexers/the-graph.md | 16 ++-- docs/dev-tools/oracles/pyth.md | 6 +- docs/dev-tools/oracles/redstone.md | 36 ++++---- docs/dev-tools/rpc-providers/chainstack.md | 82 +++++++++---------- docs/dev-tools/rpc-providers/now-nodes.md | 10 +-- .../dev-tools/rpc-providers/omnia-protocol.md | 4 +- 21 files changed, 219 insertions(+), 219 deletions(-) diff --git a/blog/aurora-chains-demo.md b/blog/aurora-chains-demo.md index cda69c09..340b8198 100644 --- a/blog/aurora-chains-demo.md +++ b/blog/aurora-chains-demo.md @@ -8,10 +8,10 @@ image: https://www.datocms-assets.com/95026/1701394098-ac2.png --- Aurora Chains are dedicated blockchains that go beyond mere Ethereum compatibility through a set of industry-first innovations like: -* *custom token & fee mechanics* (e.g., gasless transactions; paying for gas with a custom token; some percentage of any transaction value to be stored in Aurora Chain Treasury, etc.); -* *custom access control* (public vs private chain, who can transact, who can deploy contracts? e.g., NFT-based access to the blockchain, private chain can be built by using a private NEAR shard – [Calimero](https://www.calimero.network/)); -* *seamless interoperability* with Aurora, NEAR, and any other Aurora Chains: you can freely move your assets using Rainbow Bridge, call contracts via cross-contract calls, etc.; This is the main difference between Chains and other solutions (like Avalanche or Cosmos). There is no disjointness in between. You can call any smart contract in any other Chain or Near and interact with it freely. -* *tremendous transaction throughput – *we can provide you with dozens of millions of transactions daily for your ecosystem. +* *custom token & fee mechanics* (e.g., gasless transactions; paying for gas with a custom token; some percentage of any transaction value to be stored in Aurora Chain Treasury, etc.); +* *custom access control* (public vs private chain, who can transact, who can deploy contracts? e.g., NFT-based access to the blockchain, private chain can be built by using a private NEAR shard – [Calimero](https://www.calimero.network/)); +* *seamless interoperability* with Aurora, NEAR, and any other Aurora Chains: you can freely move your assets using Rainbow Bridge, call contracts via cross-contract calls, etc.; This is the main difference between Chains and other solutions (like Avalanche or Cosmos). There is no disjointness in between. You can call any smart contract in any other Chain or Near and interact with it freely. +* *tremendous transaction throughput – *we can provide you with dozens of millions of transactions daily for your ecosystem. Every Aurora Chain is based upon the [Aurora smart contract.](https://github.com/aurora-is-near/aurora-engine/) Aurora Chain is just another instance of it that can be configured in way that will work in the best way possible to be aligned with your business model and goals. The Aurora Labs team will gladly help you maintain and support your chain. diff --git a/blog/aurora-cloud-borealis-business.md b/blog/aurora-cloud-borealis-business.md index b75911fb..d6baa518 100644 --- a/blog/aurora-cloud-borealis-business.md +++ b/blog/aurora-cloud-borealis-business.md @@ -32,15 +32,15 @@ Let’s see this setup process in more detail. As previously discussed, Deals consist of rules. Therefore, when a business engages with Aurora's engineering team, two key aspects need to be established: -* Which smart contracts will be part of a deal? -* What is the business logic around free transactions for users?\ +* Which smart contracts will be part of a deal? +* What is the business logic around free transactions for users?\ Typically, setting up a deal would initiate with specific parameters. These, however, are not strict boundaries but flexible starting points. Our adaptability allows us to fine-tune the operational rules by leveraging a wide range of resources. These could range from IP addresses and authentication tokens to the internal data embedded within each transaction. Nevertheless, right now, we propose using the following set of parameters: -* **FROM:** This parameter specifies the originator of the transaction, and it can take values such as ***All***, meaning that the rule engine will not filter any transactions based on their origin address (i.e., all origin addresses are valid for this deal) or ***EOA*** in which case the rule engine will only pick up transactions coming from a specific list of addresses (EOAs). We refer to this list as the whitelist, which must be populated by the businesses. -* **TO:** This parameter specifies the transaction's target, and it can take values such as an ***address*** so that the rule engine will pick up transactions directed to this specific contract address. If a transaction goes to another contract, it cannot be associated with this deal. -* **DEAL**: This parameter specifies the number of transactions that the beneficiaries of this deal can get. It can be set to UNLIMITED or a specific number. +* **FROM:** This parameter specifies the originator of the transaction, and it can take values such as ***All***, meaning that the rule engine will not filter any transactions based on their origin address (i.e., all origin addresses are valid for this deal) or ***EOA*** in which case the rule engine will only pick up transactions coming from a specific list of addresses (EOAs). We refer to this list as the whitelist, which must be populated by the businesses. +* **TO:** This parameter specifies the transaction's target, and it can take values such as an ***address*** so that the rule engine will pick up transactions directed to this specific contract address. If a transaction goes to another contract, it cannot be associated with this deal. +* **DEAL**: This parameter specifies the number of transactions that the beneficiaries of this deal can get. It can be set to UNLIMITED or a specific number. Here are a few simple examples of Borealis Business deals:  @@ -60,9 +60,9 @@ Here is an image describing how the AuroraPass (AP) Deal works: Businesses must define a list of approved addresses that can benefit from their deal. The whitelisted addresses are managed via a dedicated API to enable companies to:  -* Add an address.  -* Remove an address.  -* Check if an address is on the whitelist.  +* Add an address.  +* Remove an address.  +* Check if an address is on the whitelist.  The Aurora team will provide businesses with the credentials for this API as part of the Borealis deal setup process. diff --git a/blog/demystifying-transaction-failures.md b/blog/demystifying-transaction-failures.md index 3c374560..9ed706f8 100644 --- a/blog/demystifying-transaction-failures.md +++ b/blog/demystifying-transaction-failures.md @@ -42,12 +42,12 @@ That is it. The task is solved. You can see in Aurora Helpers directly what this Those `07 03` numbers correspond to the `status` field of the Aurora Engine's transaction. The First number indicates the[ Aurora Engine API version](https://github.com/aurora-is-near/aurora-engine/pull/299/files#diff-a0e4fe79c7aa101e4b4e969318e18bb3854f0f8607e4b56d5665e131f98fdfa8R116). And the second one corresponds to the [statuses](https://github.com/aurora-is-near/aurora-engine/blob/a00df8e7d83ae49c035348111cc89be28cb93dab/engine-types/src/parameters/engine.rs#L19-L26) which could transactions have inside the Engine after execution. Let's compile them into the list below: -* 00 – Succeed: transaction has been executed successfully. -* 01 – Revert: transaction has been reverted, most likely because of internal contract terms. -* 02 – OutOfGas: execution ran out of gas. -* 03 – OutOfFund: not enough funds to start the execution. -* 04 –OutOfOffset: an opcode accesses external information, but the request exceeds the offset limit. -* 05 – CallTooDeep: call stack is too deep. +* 00 – Succeed: transaction has been executed successfully. +* 01 – Revert: transaction has been reverted, most likely because of internal contract terms. +* 02 – OutOfGas: execution ran out of gas. +* 03 – OutOfFund: not enough funds to start the execution. +* 04 –OutOfOffset: an opcode accesses external information, but the request exceeds the offset limit. +* 05 – CallTooDeep: call stack is too deep. We can create the enum map inside our code to convert easily between codes and error names: diff --git a/blog/getting-started-with-aurora.md b/blog/getting-started-with-aurora.md index 5fac1499..e2f465df 100644 --- a/blog/getting-started-with-aurora.md +++ b/blog/getting-started-with-aurora.md @@ -95,11 +95,11 @@ To interact with the contract, you have to obtain some AuroraEth in the Aurora ` To directly obtain AuroraETH in the `testnet`, you can follow these steps: -* Go to the following link: [https://aurora.dev/faucet](https://aurora.dev/faucet) -* Select the Testnet. -* Connect to MetaMask. Click on "Connect to Aurora Testnet." This will likely open your MetaMask wallet and prompt you to perform a few simple instructions. -* Check the wallet address to which you have connected. If you have multiple accounts in MetaMask and it is not connected to the desired account, click on the MetaMask icon in your browser and select the account you want to connect to. -* Click on "Request 0.001 ETH from the faucet." This will initiate the process of receiving AuroraETH. +* Go to the following link: [https://aurora.dev/faucet](https://aurora.dev/faucet) +* Select the Testnet. +* Connect to MetaMask. Click on "Connect to Aurora Testnet." This will likely open your MetaMask wallet and prompt you to perform a few simple instructions. +* Check the wallet address to which you have connected. If you have multiple accounts in MetaMask and it is not connected to the desired account, click on the MetaMask icon in your browser and select the account you want to connect to. +* Click on "Request 0.001 ETH from the faucet." This will initiate the process of receiving AuroraETH. Congratulations! You now have AuroraETH in your `testnet` wallet! @@ -113,17 +113,17 @@ This method will take approximately 20 minutes. First, we will obtain ETH in Goe Obtain the Eth in Goerli testnet in Ethereum: -* Go to the following link:[ *https://goerli-faucet.pk910.de/*](https://goerli-faucet.pk910.de/). Of course, it is not the only option. But here, you can get the Eth without a daily limit. -* Enter the address where you want the Eth to be sent. -* Click “Start Mining” and wait… -* Finish the mining and receive Eth. +* Go to the following link:[ *https://goerli-faucet.pk910.de/*](https://goerli-faucet.pk910.de/). Of course, it is not the only option. But here, you can get the Eth without a daily limit. +* Enter the address where you want the Eth to be sent. +* Click “Start Mining” and wait… +* Finish the mining and receive Eth. Transfer the Eth to Aurora using the Rainbow Bridge: -* Visit[ *https://testnet.rainbowbridge.app/*](https://testnet.rainbowbridge.app/) -* Click “New Transfer” and select “Transfer from Ethereum” and “Transfer to Aurora” -* Connect to the desired address using MetaMask in both networks -* Wait for approximately 20 minutes for the transfer to complete +* Visit[ *https://testnet.rainbowbridge.app/*](https://testnet.rainbowbridge.app/) +* Click “New Transfer” and select “Transfer from Ethereum” and “Transfer to Aurora” +* Connect to the desired address using MetaMask in both networks +* Wait for approximately 20 minutes for the transfer to complete You get the AuroraEth! Now you are ready for contract deployment! @@ -430,12 +430,12 @@ In this article, we have learned how to: (1) create accounts in Aurora, (2) get ## References -* HardHat: [https://hardhat.org/tutorial](https://hardhat.org/tutorial) -* MetaMask: [https://metamask.io/](https://metamask.io/) -* Get AuroraETH: [https://aurora.dev/faucet](https://aurora.dev/faucet) -* Mining Goerli ETH: [https://goerli-faucet.pk910.de/](https://goerli-faucet.pk910.de/) -* Rainbow Bridge for testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) -* Explorer for Aurora testnet: [explorer.testnet.aurora.dev](https://explorer.testnet.aurora.dev/) -* Explorer for Near testnet: [https://explorer.testnet.near.org](https://explorer.testnet.near.org) -* dApp for get Near tx from Aurora tx: [https://aurora-helpers.vercel.app/aurora_to_near](https://aurora-helpers.vercel.app/aurora_to_near) -* Demystifying Transaction Failures: [/blog/demystifying-transaction-failures](/blog/demystifying-transaction-failures) +* HardHat: [https://hardhat.org/tutorial](https://hardhat.org/tutorial) +* MetaMask: [https://metamask.io/](https://metamask.io/) +* Get AuroraETH: [https://aurora.dev/faucet](https://aurora.dev/faucet) +* Mining Goerli ETH: [https://goerli-faucet.pk910.de/](https://goerli-faucet.pk910.de/) +* Rainbow Bridge for testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) +* Explorer for Aurora testnet: [explorer.testnet.aurora.dev](https://explorer.testnet.aurora.dev/) +* Explorer for Near testnet: [https://explorer.testnet.near.org](https://explorer.testnet.near.org) +* dApp for get Near tx from Aurora tx: [https://aurora-helpers.vercel.app/aurora_to_near](https://aurora-helpers.vercel.app/aurora_to_near) +* Demystifying Transaction Failures: [/blog/demystifying-transaction-failures](/blog/demystifying-transaction-failures) diff --git a/blog/hot-to-get-your-tokens-from-bastion-contract.md b/blog/hot-to-get-your-tokens-from-bastion-contract.md index c9aaf545..89732726 100644 --- a/blog/hot-to-get-your-tokens-from-bastion-contract.md +++ b/blog/hot-to-get-your-tokens-from-bastion-contract.md @@ -12,9 +12,9 @@ To formulate the problem more precisely, a user has some `cUSDCcUSDTLP` tokens a We will go through the next steps: -* What contracts should we call? -* What method should we call, and how? -* How to convert `cUSDC` and `cUSDT` into regular stables? +* What contracts should we call? +* What method should we call, and how? +* How to convert `cUSDC` and `cUSDT` into regular stables? We will use the most convenient way for users to interact with smart contracts—the Explorer. However, devs can always write a script to perform the steps described in this article with Ethers or Web3.js. @@ -66,8 +66,8 @@ We're unsure about the arguments here yet, so let's find out what values we shou You can see what exactly has happened here during the execution in terms of the token transfers: -* `cUSDCcUSDTLP` tokens were burned -* `cUSDT` and `cUSDC` tokens were transferred to the caller +* `cUSDCcUSDTLP` tokens were burned +* `cUSDT` and `cUSDC` tokens were transferred to the caller Now, let's scroll down a bit and click on "View details" link at the left bottom of the page, you will see the arguments of the method used there: @@ -90,8 +90,8 @@ That is it! Now you got back your `cUSDC` and `cUSDT` tokens. To do this, we will need to point our attention to these contracts: -* cUSDT: [0x845E15A441CFC1871B7AC610b0E922019BaD9826](https://explorer.mainnet.aurora.dev/address/0x845E15A441CFC1871B7AC610b0E922019BaD9826) -* cUSDC:[ 0xe5308dc623101508952948b141fD9eaBd3337D99](https://explorer.aurora.dev/token/0xe5308dc623101508952948b141fD9eaBd3337D99) +* cUSDT: [0x845E15A441CFC1871B7AC610b0E922019BaD9826](https://explorer.mainnet.aurora.dev/address/0x845E15A441CFC1871B7AC610b0E922019BaD9826) +* cUSDC:[ 0xe5308dc623101508952948b141fD9eaBd3337D99](https://explorer.aurora.dev/token/0xe5308dc623101508952948b141fD9eaBd3337D99) For both of them, the process will look the same, so let's just talk about `cUSDT` case. To unwrap you need to call this method – \`redeem\`: diff --git a/blog/how-to-get-usdc-tokens-on-aurora-testnet.md b/blog/how-to-get-usdc-tokens-on-aurora-testnet.md index 7d920747..e667b838 100644 --- a/blog/how-to-get-usdc-tokens-on-aurora-testnet.md +++ b/blog/how-to-get-usdc-tokens-on-aurora-testnet.md @@ -57,11 +57,11 @@ We have the Goerli Ethereum account and some GoerliETH. Let’s exchange some Et **2. Connect to Goerli Network.** It can look like it doesn’t support testnet network, but it actually support it, just it is not clear from the web interface. -* Click the `Connect` button. Choose MetaMask and connect to your account. +* Click the `Connect` button. Choose MetaMask and connect to your account. ![](https://www.datocms-assets.com/95026/1689675168-uniswapconnect.jpg) -* Switch on `Show testnets` option on the Uniswap site: +* Switch on `Show testnets` option on the Uniswap site: ![](https://www.datocms-assets.com/95026/1690544253-screenshot-2023-07-28-at-12-35-32.png) @@ -69,13 +69,13 @@ We have the Goerli Ethereum account and some GoerliETH. Let’s exchange some Et ![](https://www.datocms-assets.com/95026/1690544274-screenshot-2023-07-28-at-12-35-54.png) -* Change the network to Goerli Testnet. +* Change the network to Goerli Testnet. ![](https://www.datocms-assets.com/95026/1690544545-screenshot-2023-07-28-at-12-39-49.png) **3. Swap GoerliEth into USDC** -* Click `Select token`. Yes, you doesn’t see the USDC tokens in the list. It is Ok, don’t worry: +* Click `Select token`. Yes, you doesn’t see the USDC tokens in the list. It is Ok, don’t worry: ![](https://www.datocms-assets.com/95026/1690544771-screenshot-2023-07-28-at-12-45-29.png) @@ -85,11 +85,11 @@ In the search field write `USDC` and select the `USD Coin` from the list. For so ![](https://www.datocms-assets.com/95026/1690544794-screenshot-2023-07-28-at-12-45-57.png) -* Put some small amount of ETH in first line. 0.01 GöETH will be enough. +* Put some small amount of ETH in first line. 0.01 GöETH will be enough. ![](https://www.datocms-assets.com/95026/1690544849-screenshot-2023-07-28-at-12-44-59.png) -* Click Swap +* Click Swap ![](https://www.datocms-assets.com/95026/1690544873-screenshot-2023-07-28-at-12-45-06.png) @@ -99,12 +99,12 @@ Congratulations! Now you get a lot of test USDC in your Ethereum account. You ca Now the easy part: transfer USDC tokens from Ethereum to Aurora. -* Open the Rainbow Bridge for testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) -* Click New Transfer: +* Open the Rainbow Bridge for testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) +* Click New Transfer: ![](https://www.datocms-assets.com/95026/1690544972-screenshot-2023-07-28-at-12-48-40.png) -* Connect to your accounts on Ethereum and on Aurora: +* Connect to your accounts on Ethereum and on Aurora: ![](https://www.datocms-assets.com/95026/1690545004-screenshot-2023-07-28-at-12-48-57.png) @@ -122,8 +122,8 @@ In this short article, we learned how to get a lot of USDC tokens on Ethereum, N ## References -* Article with instructions on how to install MetaMask and mint Ether: [/blog/getting-started-with-aurora](/blog/getting-started-with-aurora) -* USDC tokens address on Ethereum Goerli: [https://goerli.etherscan.io/address/0x07865c6e87b9f70255377e024ace6630c1eaa37f](https://goerli.etherscan.io/address/0x07865c6e87b9f70255377e024ace6630c1eaa37f) -* Uniswap: [https://app.uniswap.org/#/swap](https://app.uniswap.org/#/swap) -* Rainbow Bridge For Testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) -* Checking the supported tokens for Rainbow Bridge on Testnet: [https://testnet.rainbowbridge.app/deploy](https://testnet.rainbowbridge.app/deploy) +* Article with instructions on how to install MetaMask and mint Ether: [/blog/getting-started-with-aurora](/blog/getting-started-with-aurora) +* USDC tokens address on Ethereum Goerli: [https://goerli.etherscan.io/address/0x07865c6e87b9f70255377e024ace6630c1eaa37f](https://goerli.etherscan.io/address/0x07865c6e87b9f70255377e024ace6630c1eaa37f) +* Uniswap: [https://app.uniswap.org/#/swap](https://app.uniswap.org/#/swap) +* Rainbow Bridge For Testnet: [https://testnet.rainbowbridge.app/](https://testnet.rainbowbridge.app/) +* Checking the supported tokens for Rainbow Bridge on Testnet: [https://testnet.rainbowbridge.app/deploy](https://testnet.rainbowbridge.app/deploy) diff --git a/blog/practical-erc20-burning.md b/blog/practical-erc20-burning.md index 1a8addad..441fcecb 100644 --- a/blog/practical-erc20-burning.md +++ b/blog/practical-erc20-burning.md @@ -23,10 +23,10 @@ Due to these constraints, projects seek alternative ways to approach token burns One often recommended way to burn tokens involves creating a contract that immediately self-destructs and sends tokens to its own address. However, this method comes with its set of challenges: -* The overhead of creating, deploying, and testing such contracts, especially if the burn needs to happen periodically -* Even if the contract uses `SELFDESTRUCT` it does not preclude the possibility of redeploying another contract at the same address. This has been successfully exploited in the infamous [Tornado Cash attack](https://forum.tornado.ws/t/full-governance-attack-description/62?ref=lapitsky.com) by using a metamorphic contract factory. -* There is a negative sentiment against `SELFDESTRUCT` opcode and (although stagnant) [EIP-4758](https://eips.ethereum.org/EIPS/eip-4758?ref=lapitsky.com) that highlights some security concerns. -* Token burns via this method aren't recognized on most analytics platforms. +* The overhead of creating, deploying, and testing such contracts, especially if the burn needs to happen periodically +* Even if the contract uses `SELFDESTRUCT` it does not preclude the possibility of redeploying another contract at the same address. This has been successfully exploited in the infamous [Tornado Cash attack](https://forum.tornado.ws/t/full-governance-attack-description/62?ref=lapitsky.com) by using a metamorphic contract factory. +* There is a negative sentiment against `SELFDESTRUCT` opcode and (although stagnant) [EIP-4758](https://eips.ethereum.org/EIPS/eip-4758?ref=lapitsky.com) that highlights some security concerns. +* Token burns via this method aren't recognized on most analytics platforms. Given the listed concerns, I advise against this approach and encourage the use of burn addresses. @@ -46,8 +46,8 @@ The benefit of using well-known burn addresses over "contract burns" is that bur ## Bonus tips -* Ensure that your ERC20 contract is locked and immutable before initiating burns. -* For ERC20 tokens on multiple networks, execute burns on your primary network only, for unified tracking and analytics. -* For the first burn, refrain from using decentralized or ZK-bridges. If your contract unexpectedly rejects the transaction (like disallowing transfers to *null*) – it might muddle your analytics even though the tokens are technically burned. +* Ensure that your ERC20 contract is locked and immutable before initiating burns. +* For ERC20 tokens on multiple networks, execute burns on your primary network only, for unified tracking and analytics. +* For the first burn, refrain from using decentralized or ZK-bridges. If your contract unexpectedly rejects the transaction (like disallowing transfers to *null*) – it might muddle your analytics even though the tokens are technically burned. Big thanks to [Lance Henderson](https://www.linkedin.com/in/lance-henderson/?ref=lapitsky.com) for technical insights and for reviewing this post! diff --git a/blog/spinning-up-your-own-aurora-node.md b/blog/spinning-up-your-own-aurora-node.md index f80080b1..e9eb1e44 100644 --- a/blog/spinning-up-your-own-aurora-node.md +++ b/blog/spinning-up-your-own-aurora-node.md @@ -20,9 +20,9 @@ There is another category of users who might consider running their own setup, a The Relayer consists of three components: -* ***a JSON-RPC server*** compatible with Ethereum's [Web3 API](https://eth.wiki/json-rpc/API) for [Aurora Engine](https://github.com/aurora-is-near/aurora-engine) instances deployed on the NEAR Protocol. -* * ****Aurora Refiner*** which allows users to download all NEAR Blocks and produce Ethereum-compatible blocks, transactions, and logs. -* ***Indexer*** which continuously reads JSON files generated by [Aurora Refiner](https://github.com/aurora-is-near/borealis-engine-lib) and populates a database, that is used by the JSON-RPC server to serve data. +* ***a JSON-RPC server*** compatible with Ethereum's [Web3 API](https://eth.wiki/json-rpc/API) for [Aurora Engine](https://github.com/aurora-is-near/aurora-engine) instances deployed on the NEAR Protocol. +* * ****Aurora Refiner*** which allows users to download all NEAR Blocks and produce Ethereum-compatible blocks, transactions, and logs. +* ***Indexer*** which continuously reads JSON files generated by [Aurora Refiner](https://github.com/aurora-is-near/borealis-engine-lib) and populates a database, that is used by the JSON-RPC server to serve data. ![](https://www.datocms-assets.com/95026/1680267260-relayer-20.png) diff --git a/docs/dev-tools/basics/hardhat.md b/docs/dev-tools/basics/hardhat.md index f3883ee3..f00d1ae2 100644 --- a/docs/dev-tools/basics/hardhat.md +++ b/docs/dev-tools/basics/hardhat.md @@ -9,14 +9,14 @@ The main objective of this tutorial is to show how to deploy and interact with t This tutorial assumes that you have Node.js 12+ and Yarn. Please refer to the [Yarn installation how-to](https://classic.yarnpkg.com/en/docs/install#mac-stable) if you don't yet have the yarn command installed locally. -* To install the prerequisite packages, clone the examples repository: +* To install the prerequisite packages, clone the examples repository: ```shell git clone https://github.com/aurora-is-near/aurora-examples.git cd aurora-examples/hardhat/erc20/ ``` -* Add your Aurora Private key (from MetaMask) to **.env** file and then run yarn :\ +* Add your Aurora Private key (from MetaMask) to **.env** file and then run yarn :\ ```shell diff --git a/docs/dev-tools/basics/metamask.md b/docs/dev-tools/basics/metamask.md index 210363ea..ce1c4e2e 100644 --- a/docs/dev-tools/basics/metamask.md +++ b/docs/dev-tools/basics/metamask.md @@ -17,10 +17,10 @@ In the top-right corner of the MetaMask interface, click the network selection d Fill in the form with the following information: -* Network Name: Aurora Testnet -* New RPC URL: `https://testnet.aurora.dev/` -* Chain ID: 1313161555 -* Currency Symbol: ETH +* Network Name: Aurora Testnet +* New RPC URL: `https://testnet.aurora.dev/` +* Chain ID: 1313161555 +* Currency Symbol: ETH ![](https://www.datocms-assets.com/95026/1679469198-metamask_create_aurora_rpc-e61eab72f8fa70386b43ed3c1d403d11.png) diff --git a/docs/dev-tools/cloud/aurora-chains.md b/docs/dev-tools/cloud/aurora-chains.md index 5512ef53..4670a25f 100644 --- a/docs/dev-tools/cloud/aurora-chains.md +++ b/docs/dev-tools/cloud/aurora-chains.md @@ -17,22 +17,22 @@ We're sharing years of our expertise and technology by making available Aurora C To make Aurora Chain work in the best way possible for your business, we will help you to configure your setup. Among the features to configure are: -* ***custom token & fee mechanics*** (e.g., gasless transactions; paying for gas with a custom token; some percentage of any transaction value to be stored in Aurora Chain Treasury, etc.); -* ***custom access control*** (public vs private chain, who can transact, who can deploy contracts? e.g., NFT-based access to the blockchain, the private chain can be built by using a private Near shard – [Calimero](https://www.calimero.network/)). +* ***custom token & fee mechanics*** (e.g., gasless transactions; paying for gas with a custom token; some percentage of any transaction value to be stored in Aurora Chain Treasury, etc.); +* ***custom access control*** (public vs private chain, who can transact, who can deploy contracts? e.g., NFT-based access to the blockchain, the private chain can be built by using a private Near shard – [Calimero](https://www.calimero.network/)). ### Aurora Chains Advantages What makes Aurora Chains stand out is a set of top-notch technical solutions done on the level of blockchain architecture, ecosystem, and infrastructure: -* ***seamless interoperability*** with Aurora, Near, and any other Aurora Chains: you can freely move your assets using Rainbow Bridge, call contracts via cross-contract calls, etc.; This is the main difference between Aurora Chains and other solutions (like Avalanche or Cosmos). There is no disjointness in between. You can call any smart contract in any other Aurora Chain or Near and interact with it freely. -* ***tremendous transaction throughput**** – *we can provide you with dozens of millions of transactions daily for your ecosystem. +* ***seamless interoperability*** with Aurora, Near, and any other Aurora Chains: you can freely move your assets using Rainbow Bridge, call contracts via cross-contract calls, etc.; This is the main difference between Aurora Chains and other solutions (like Avalanche or Cosmos). There is no disjointness in between. You can call any smart contract in any other Aurora Chain or Near and interact with it freely. +* ***tremendous transaction throughput**** – *we can provide you with dozens of millions of transactions daily for your ecosystem. ### Learn more about Aurora Chains Here are some in-depth articles to discover details about how Aurora Chain work and how it has been developed: -* [Aurora Chains: Demo Walkthrough](/blog/aurora-chains-demo) -* [Aurora Chains: Code Overview](/blog/aurora-chains-code-overview) +* [Aurora Chains: Demo Walkthrough](/blog/aurora-chains-demo) +* [Aurora Chains: Code Overview](/blog/aurora-chains-code-overview) ### Contact Us diff --git a/docs/dev-tools/cloud/aurora-pass.md b/docs/dev-tools/cloud/aurora-pass.md index 5edabb78..35af2657 100644 --- a/docs/dev-tools/cloud/aurora-pass.md +++ b/docs/dev-tools/cloud/aurora-pass.md @@ -7,11 +7,11 @@ With Aurora Pass, you can send and receive assets on the Aurora Mainnet and Silo ### Key Features -* Send and receive assets on Aurora Mainnet and Silo networks -* Connect to dApps via WalletConnect -* View your portfolio balances and recent transactions -* Simple and user-friendly interface -* Secure and non-custodial wallet +* Send and receive assets on Aurora Mainnet and Silo networks +* Connect to dApps via WalletConnect +* View your portfolio balances and recent transactions +* Simple and user-friendly interface +* Secure and non-custodial wallet ### Security diff --git a/docs/dev-tools/cloud/borealis-business.md b/docs/dev-tools/cloud/borealis-business.md index 81f561a4..348d8777 100644 --- a/docs/dev-tools/cloud/borealis-business.md +++ b/docs/dev-tools/cloud/borealis-business.md @@ -25,15 +25,15 @@ Let’s see this setup process in more detail. As previously discussed, Deals consist of rules. Therefore, when a business engages with Aurora's engineering team, two key aspects need to be established: -* Which smart contracts will be part of a deal? -* What is the business logic around free transactions for users?\ +* Which smart contracts will be part of a deal? +* What is the business logic around free transactions for users?\ Typically, setting up a deal would initiate with specific parameters. These, however, are not strict boundaries but flexible starting points. Our adaptability allows us to fine-tune the operational rules by leveraging a wide range of resources. These could range from IP addresses and authentication tokens to the internal data embedded within each transaction. Nevertheless, right now, we propose using the following set of parameters: -* **FROM:** This parameter specifies the originator of the transaction, and it can take values such as ***All***, meaning that the rule engine will not filter any transactions based on their origin address (i.e., all origin addresses are valid for this deal) or ***EOA*** in which case the rule engine will only pick up transactions coming from a specific list of addresses (EOAs). We refer to this list as the whitelist, which must be populated by the businesses. -* **TO:** This parameter specifies the transaction's target, and it can take values such as an ***address*** so that the rule engine will pick up transactions directed to this specific contract address. If a transaction goes to another contract, it cannot be associated with this deal. -* **DEAL**: This parameter specifies the number of transactions that the beneficiaries of this deal can get. It can be set to UNLIMITED or a specific number. +* **FROM:** This parameter specifies the originator of the transaction, and it can take values such as ***All***, meaning that the rule engine will not filter any transactions based on their origin address (i.e., all origin addresses are valid for this deal) or ***EOA*** in which case the rule engine will only pick up transactions coming from a specific list of addresses (EOAs). We refer to this list as the whitelist, which must be populated by the businesses. +* **TO:** This parameter specifies the transaction's target, and it can take values such as an ***address*** so that the rule engine will pick up transactions directed to this specific contract address. If a transaction goes to another contract, it cannot be associated with this deal. +* **DEAL**: This parameter specifies the number of transactions that the beneficiaries of this deal can get. It can be set to UNLIMITED or a specific number. Here are a few simple examples of Borealis Business deals:  @@ -53,9 +53,9 @@ Here is an image describing how the AuroraPass (AP) Deal works: Businesses must define a list of approved addresses that can benefit from their deal. The whitelisted addresses are managed via a dedicated API to enable companies to:  -* Add an address.  -* Remove an address.  -* Check if an address is on the whitelist.  +* Add an address.  +* Remove an address.  +* Check if an address is on the whitelist.  The Aurora team will provide businesses with the credentials for this API as part of the Borealis deal setup process. diff --git a/docs/dev-tools/indexers/covalent.md b/docs/dev-tools/indexers/covalent.md index 3673df29..9a1c4c4d 100644 --- a/docs/dev-tools/indexers/covalent.md +++ b/docs/dev-tools/indexers/covalent.md @@ -10,9 +10,9 @@ Covalent maintains a full archival copy of every supported blockchain, meaning e **Use Covalent if you need:** -* Structured and enhanced on-chain data well beyond what you get from RPC providers -* Broad and deep multi-chain data at scale -* Enterprise-grade performance +* Structured and enhanced on-chain data well beyond what you get from RPC providers +* Broad and deep multi-chain data at scale +* Enterprise-grade performance > [**Sign up to start building on Aurora**](https://www.covalenthq.com/platform/?utm_source=aurora\&utm_medium=partner-docs) @@ -36,8 +36,8 @@ The Free tier is meant for trying the Covalent API, especially for early-stage p **Key Features:** -* 4 RPS -* 100,000 credits per month, spent across all endpoints and networks (including testnets) +* 4 RPS +* 100,000 credits per month, spent across all endpoints and networks (including testnets) ### Premium Tier @@ -45,26 +45,26 @@ The Premium tier is available for users who want to scale with us and require be **Key Features:** -* 50 RPS -* 100,000 credits per month, spent across all endpoints and networks (including testnets) -* Auto-scaling Flex credits allow your app to consume credits past the included 100,000 credits -* 10x faster average response time -* 50% decrease in response time variance +* 50 RPS +* 100,000 credits per month, spent across all endpoints and networks (including testnets) +* Auto-scaling Flex credits allow your app to consume credits past the included 100,000 credits +* 10x faster average response time +* 50% decrease in response time variance ### API Categories -* [Balances](https://www.covalenthq.com/docs/api/balances/get-token-balances-for-address/?utm_source=aurora\&utm_medium=partner-docs) -* [NFTs](https://www.covalenthq.com/docs/api/nft/get-nfts-for-address/?utm_source=aurora\&utm_medium=partner-docs) -* [Transactions](https://www.covalenthq.com/docs/api/transactions/get-transactions-for-address/?utm_source=aurora\&utm_medium=partner-docs) -* [Security](https://www.covalenthq.com/docs/api/security/get-token-approvals-for-address/?utm_source=aurora\&utm_medium=partner-docs) -* [Log Events & Others](https://www.covalenthq.com/docs/api/base/get-log-events-by-contract-address/?utm_source=aurora\&utm_medium=partner-docs) +* [Balances](https://www.covalenthq.com/docs/api/balances/get-token-balances-for-address/?utm_source=aurora\&utm_medium=partner-docs) +* [NFTs](https://www.covalenthq.com/docs/api/nft/get-nfts-for-address/?utm_source=aurora\&utm_medium=partner-docs) +* [Transactions](https://www.covalenthq.com/docs/api/transactions/get-transactions-for-address/?utm_source=aurora\&utm_medium=partner-docs) +* [Security](https://www.covalenthq.com/docs/api/security/get-token-approvals-for-address/?utm_source=aurora\&utm_medium=partner-docs) +* [Log Events & Others](https://www.covalenthq.com/docs/api/base/get-log-events-by-contract-address/?utm_source=aurora\&utm_medium=partner-docs) ### Get started -* [API Key](https://www.covalenthq.com/platform/?utm_source=aurora\&utm_medium=partner-docs) - sign up for free -* [Quickstart](https://www.covalenthq.com/docs/unified-api/quickstart/?utm_source=aurora\&utm_medium=partner-docs) - summary of key resources to get you building immediately on the blockchain -* [API Reference](https://www.covalenthq.com/docs/api/?utm_source=aurora\&utm_medium=partner-docs) - try all the endpoints directly from your browser -* [Guides](https://www.covalenthq.com/docs/unified-api/guides/?utm_source=aurora\&utm_medium=partner-docs) - learn how to build dapps, fetch data and extend your Web3 knowledge +* [API Key](https://www.covalenthq.com/platform/?utm_source=aurora\&utm_medium=partner-docs) - sign up for free +* [Quickstart](https://www.covalenthq.com/docs/unified-api/quickstart/?utm_source=aurora\&utm_medium=partner-docs) - summary of key resources to get you building immediately on the blockchain +* [API Reference](https://www.covalenthq.com/docs/api/?utm_source=aurora\&utm_medium=partner-docs) - try all the endpoints directly from your browser +* [Guides](https://www.covalenthq.com/docs/unified-api/guides/?utm_source=aurora\&utm_medium=partner-docs) - learn how to build dapps, fetch data and extend your Web3 knowledge ## Increment @@ -76,9 +76,9 @@ Increment is a novel no-code charting and reporting tool powered by Covalent, re Increment can be used for: -* [Analyzing Blockchain Networks](https://www.covalenthq.com/docs/increment/data-models/chain-gdp/?utm_source=aurora\&utm_medium=partner-docs) -* [Analyzing DEXs](https://www.covalenthq.com/docs/increment/data-models/swap-land/?utm_source=aurora\&utm_medium=partner-docs) -* [Analyzing NFT Marketplaces](https://www.covalenthq.com/docs/increment/data-models/jpeg-analysis/?utm_source=aurora\&utm_medium=partner-docs) +* [Analyzing Blockchain Networks](https://www.covalenthq.com/docs/increment/data-models/chain-gdp/?utm_source=aurora\&utm_medium=partner-docs) +* [Analyzing DEXs](https://www.covalenthq.com/docs/increment/data-models/swap-land/?utm_source=aurora\&utm_medium=partner-docs) +* [Analyzing NFT Marketplaces](https://www.covalenthq.com/docs/increment/data-models/jpeg-analysis/?utm_source=aurora\&utm_medium=partner-docs) For example, [click here](https://www.covalenthq.com/docs/networks/aurora/?utm_source=aurora\&utm_medium=partner-docs#network-status) to get the latest number of active wallets, transactions, and tokens by day, week, month, or year for Aurora: @@ -86,11 +86,11 @@ For example, [click here](https://www.covalenthq.com/docs/networks/aurora/?utm_s ### Get started -* [Increment](https://www.covalenthq.com/platform/increment/#/?utm_source=aurora\&utm_medium=partner-docs) - login via the Covalent Platform -* [Docs](https://www.covalenthq.com/docs/increment/?utm_source=aurora\&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=aurora\&utm_medium=partner-docs) - build analytics in 3 clicks -* [Explore Models. Seek Alpha.](https://www.covalenthq.com/platform/increment/#/pages/covalent/chain-gdp/?utm_source=aurora\&utm_medium=partner-docs) - browse all data models -* [Use Models. Become Alpha.](https://www.covalenthq.com/platform/increment/#/sql/query_b6c88fd8604f49d5920ca86fa7/?utm_source=aurora\&utm_medium=partner-docs) - use a data model +* [Increment](https://www.covalenthq.com/platform/increment/#/?utm_source=aurora\&utm_medium=partner-docs) - login via the Covalent Platform +* [Docs](https://www.covalenthq.com/docs/increment/?utm_source=aurora\&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=aurora\&utm_medium=partner-docs) - build analytics in 3 clicks +* [Explore Models. Seek Alpha.](https://www.covalenthq.com/platform/increment/#/pages/covalent/chain-gdp/?utm_source=aurora\&utm_medium=partner-docs) - browse all data models +* [Use Models. Become Alpha.](https://www.covalenthq.com/platform/increment/#/sql/query_b6c88fd8604f49d5920ca86fa7/?utm_source=aurora\&utm_medium=partner-docs) - use a data model ## About Covalent[​](https://doc.aurora.dev/integrate/indexers/covalent/#about-covalent "Direct link to heading") diff --git a/docs/dev-tools/indexers/flair.md b/docs/dev-tools/indexers/flair.md index c5013632..606055ab 100644 --- a/docs/dev-tools/indexers/flair.md +++ b/docs/dev-tools/indexers/flair.md @@ -11,30 +11,30 @@ Real-time and historical custom data indexing for any EVM chain. Compared to other alternatives the main reasons are: -* 🚀 Adopting **parallel and distributed processing** paradigm means high scalability and resiliency for your indexing stack. Instead of constrained sequential processing (e.g. Subgraph). -* 🧩 Focused on **primitives**, which means on the left you plug-in an RPC, and on the right you output the data to any destination database. -* 🚄 Native **real-time stream processing** for certain data workload (such as aggregations, rollups) for things like total volume per pool, or total portfolio per user wallet. -* ☁️ **Managed** cloud services avoid DevOps and irrelevant engineering costs for dApp developers. -* 🧑‍💻 Avoid decentralization **overhead** (consensus, network hops, etc) since we believe to enable best UX for dApps reading data must be as close to the developers as possible. +* 🚀 Adopting **parallel and distributed processing** paradigm means high scalability and resiliency for your indexing stack. Instead of constrained sequential processing (e.g. Subgraph). +* 🧩 Focused on **primitives**, which means on the left you plug-in an RPC, and on the right you output the data to any destination database. +* 🚄 Native **real-time stream processing** for certain data workload (such as aggregations, rollups) for things like total volume per pool, or total portfolio per user wallet. +* ☁️ **Managed** cloud services avoid DevOps and irrelevant engineering costs for dApp developers. +* 🧑‍💻 Avoid decentralization **overhead** (consensus, network hops, etc) since we believe to enable best UX for dApps reading data must be as close to the developers as possible. ### Features[​](https://doc-zk-evm-git-fork-0xflair-main-infura-web.vercel.app/build-on-linea/tooling/data-indexers/flair#features) -* ✅ Listen to **any EVM chain** with just an RPC URL. +* ✅ Listen to **any EVM chain** with just an RPC URL. - * Free managed RPC URLs for +8 popular chains already included. - * Works with both websocket and https-only RPCs. + * Free managed RPC URLs for +8 popular chains already included. + * Works with both websocket and https-only RPCs. -* ✅ Track and ingest **any contract** for **any event topic.** +* ✅ Track and ingest **any contract** for **any event topic.** - * Auto-track new contracts deployed from factory contracts. + * Auto-track new contracts deployed from factory contracts. -* ✅ **Custom processor scripts** with Javascript runtime (with **Typescript** support) +* ✅ **Custom processor scripts** with Javascript runtime (with **Typescript** support) - * Make external API or Webhook calls to third-party or your backend. - * Get current or historical USD value of any ERC20 token amount of any contract address on any chain. - * Use any external NPM library. + * Make external API or Webhook calls to third-party or your backend. + * Get current or historical USD value of any ERC20 token amount of any contract address on any chain. + * Use any external NPM library. -* ✅ **Stream** any stored data to your destination database (Postgres, MongoDB, MySQL, Kafka, Elasticsearch, Timescale, etc). +* ✅ **Stream** any stored data to your destination database (Postgres, MongoDB, MySQL, Kafka, Elasticsearch, Timescale, etc). ## Getting Started[​](https://doc-zk-evm-git-fork-0xflair-main-infura-web.vercel.app/build-on-linea/tooling/data-indexers/flair#getting-started) @@ -97,13 +97,13 @@ Explore real-world usage of Flair indexing primitives for various use-cases. ### DeFi[​](https://doc-zk-evm-git-fork-0xflair-main-infura-web.vercel.app/build-on-linea/tooling/data-indexers/flair#defi) -* [Aggregate protocol fees in USD across multiple chains](https://github.com/flair-sdk/examples/tree/main/aggregate-protocol-fees-in-usd) -* [Calculate "Health Factor" of positions with contract factory tracking](https://github.com/flair-sdk/examples/tree/main/health-factor-with-factory-tracking) -* [Index Uniswap v2 swaps with USD price for all addresses](https://github.com/flair-sdk/examples/tree/main/uniswap-v2-events-from-all-contracts-with-usd-price) +* [Aggregate protocol fees in USD across multiple chains](https://github.com/flair-sdk/examples/tree/main/aggregate-protocol-fees-in-usd) +* [Calculate "Health Factor" of positions with contract factory tracking](https://github.com/flair-sdk/examples/tree/main/health-factor-with-factory-tracking) +* [Index Uniswap v2 swaps with USD price for all addresses](https://github.com/flair-sdk/examples/tree/main/uniswap-v2-events-from-all-contracts-with-usd-price) ### NFT[​](https://doc-zk-evm-git-fork-0xflair-main-infura-web.vercel.app/build-on-linea/tooling/data-indexers/flair#nft) -* [Index ERC721 and ERC1155 NFTs on any EVM chain with an RPC URL](https://github.com/flair-sdk/examples/tree/main/erc721-and-erc1155-nft-indexing) +* [Index ERC721 and ERC1155 NFTs on any EVM chain with an RPC URL](https://github.com/flair-sdk/examples/tree/main/erc721-and-erc1155-nft-indexing) ## Need help?[​](https://doc-zk-evm-git-fork-0xflair-main-infura-web.vercel.app/build-on-linea/tooling/data-indexers/flair#need-help) diff --git a/docs/dev-tools/indexers/the-graph.md b/docs/dev-tools/indexers/the-graph.md index 1dd8cae7..beefde16 100644 --- a/docs/dev-tools/indexers/the-graph.md +++ b/docs/dev-tools/indexers/the-graph.md @@ -5,19 +5,19 @@ title: The Graph This tutorial covers the following topics: -* Running a Graph node on Aurora. -* Creating and deploying a subgraph. -* Querying events from the subgraph. +* Running a Graph node on Aurora. +* Creating and deploying a subgraph. +* Querying events from the subgraph. ## Prerequisites[​](https://doc.aurora.dev/integrate/indexers/the-graph#prerequisites "Direct link to heading") Before delving into the tutorial, you need to make sure that you have setup the following tools on you machine: -* [git](https://git-scm.com/downloads) -* [Docker](https://docs.docker.com/get-docker/) -* [Docker-Compose](https://docs.docker.com/compose/install/) -* [Node 12+](https://nodejs.org/en/download/) -* [jq](https://stedolan.github.io/jq/download/) +* [git](https://git-scm.com/downloads) +* [Docker](https://docs.docker.com/get-docker/) +* [Docker-Compose](https://docs.docker.com/compose/install/) +* [Node 12+](https://nodejs.org/en/download/) +* [jq](https://stedolan.github.io/jq/download/) ## Running Graph Node[​](https://doc.aurora.dev/integrate/indexers/the-graph#running-graph-node "Direct link to heading") diff --git a/docs/dev-tools/oracles/pyth.md b/docs/dev-tools/oracles/pyth.md index 5d4337c6..d2522150 100644 --- a/docs/dev-tools/oracles/pyth.md +++ b/docs/dev-tools/oracles/pyth.md @@ -7,9 +7,9 @@ Pyth Network is an oracle that publishes financial market data to multiple block Price feeds are available on multiple blockchains and can also be used in off-chain applications. Pyth offers three different data products to support various applications: -* [Solana Price Feeds](https://docs.pyth.network/documentation/solana-price-feeds) provide real-time prices on Solana mainnet. -* [Pythnet Price Feeds](https://docs.pyth.network/documentation/pythnet-price-feeds) provide real-time prices for 20+ blockchain ecosystems. They are available in mainnet for most [EVM chains](https://docs.pyth.network/documentation/pythnet-price-feeds/evm) – including Ethereum, BNB, Avalanche, and more – several [Cosmos chains](https://docs.pyth.network/documentation/pythnet-price-feeds/cosmwasm), [Aptos](https://docs.pyth.network/documentation/pythnet-price-feeds/aptos), and [Sui](https://docs.pyth.network/documentation/pythnet-price-feeds/sui). More ecosystems are coming soon! -* [Benchmarks](https://docs.pyth.network/documentation/benchmarks) provides historical Pyth prices for both on- and off-chain use. These historical prices can be used for settlement or other similar applications. +* [Solana Price Feeds](https://docs.pyth.network/documentation/solana-price-feeds) provide real-time prices on Solana mainnet. +* [Pythnet Price Feeds](https://docs.pyth.network/documentation/pythnet-price-feeds) provide real-time prices for 20+ blockchain ecosystems. They are available in mainnet for most [EVM chains](https://docs.pyth.network/documentation/pythnet-price-feeds/evm) – including Ethereum, BNB, Avalanche, and more – several [Cosmos chains](https://docs.pyth.network/documentation/pythnet-price-feeds/cosmwasm), [Aptos](https://docs.pyth.network/documentation/pythnet-price-feeds/aptos), and [Sui](https://docs.pyth.network/documentation/pythnet-price-feeds/sui). More ecosystems are coming soon! +* [Benchmarks](https://docs.pyth.network/documentation/benchmarks) provides historical Pyth prices for both on- and off-chain use. These historical prices can be used for settlement or other similar applications. Application developers can follow the links above to learn more about how to consume data from each product. diff --git a/docs/dev-tools/oracles/redstone.md b/docs/dev-tools/oracles/redstone.md index dc36f91c..c0126529 100644 --- a/docs/dev-tools/oracles/redstone.md +++ b/docs/dev-tools/oracles/redstone.md @@ -7,29 +7,29 @@ RedStone is an Oracle that delivers frequently updated, reliable, and diverse da ### Why we build another Oracle system[​](https://docs.redstone.finance/docs/introduction#why-we-build-another-oracle-system "Direct link to Why we build another Oracle system") -* Pushing data on-chain regardless of whether it is used or not is a huge waste of resources -* Obsolete and monolithic architecture limits scalability (it's hard to list new assets or reduce latency) -* Protocols cannot fully decide on trusted sources and data update conditions -* End-users are fully dependent on relayers and could be cut off from the service +* Pushing data on-chain regardless of whether it is used or not is a huge waste of resources +* Obsolete and monolithic architecture limits scalability (it's hard to list new assets or reduce latency) +* Protocols cannot fully decide on trusted sources and data update conditions +* End-users are fully dependent on relayers and could be cut off from the service ### Solution[​](https://docs.redstone.finance/docs/introduction#solution "Direct link to Solution") RedStone offers a radically different design of Oracles catering to the needs of modern DeFi protocols. -* Data providers can avoid the requirement of continuous on-chain data delivery -* Allow end users to self-deliver signed Oracle data on-chain -* Use the decentralized Streamr network to deliver signed oracle data to the end users -* Use token incentives to motivate data providers to maintain data integrity and uninterrupted service -* Leverage the Arweave blockchain as cheap and permanent storage for archiving Oracle data and maintaining data providers' accountability +* Data providers can avoid the requirement of continuous on-chain data delivery +* Allow end users to self-deliver signed Oracle data on-chain +* Use the decentralized Streamr network to deliver signed oracle data to the end users +* Use token incentives to motivate data providers to maintain data integrity and uninterrupted service +* Leverage the Arweave blockchain as cheap and permanent storage for archiving Oracle data and maintaining data providers' accountability ### Key facts[​](https://docs.redstone.finance/docs/introduction#key-facts "Direct link to Key facts") -* The [modular architecture](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#data-flow) maintains [data integrity](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#data-format) from source to smart contracts -* There are [3 different ways](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#3-ways-to-integrate) to integrate our service tailored to your needs -* We provide feeds for more than [1000 assets](https://app.redstone.finance/#/app/tokens) integrating [~50 data sources](https://app.redstone.finance/#/app/sources) -* We are present on [20+ chains](https://showroom.redstone.finance/) -* RedStone has been live on mainnets since March 2022 with no downtime. Code was audited by ABDK, Packshield and L2Beat Co-Founder. -* RedStone was a launch partner for [DeltaPrime](https://deltaprime.io/) on Avalanche and delivered data feeds not available anywhere else. Thanks to that DeltaPrime became the top 3 fastest growing dApps according to DefiLama. +* The [modular architecture](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#data-flow) maintains [data integrity](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#data-format) from source to smart contracts +* There are [3 different ways](https://docs.redstone.finance/docs/smart-contract-devs/how-it-works#3-ways-to-integrate) to integrate our service tailored to your needs +* We provide feeds for more than [1000 assets](https://app.redstone.finance/#/app/tokens) integrating [~50 data sources](https://app.redstone.finance/#/app/sources) +* We are present on [20+ chains](https://showroom.redstone.finance/) +* RedStone has been live on mainnets since March 2022 with no downtime. Code was audited by ABDK, Packshield and L2Beat Co-Founder. +* RedStone was a launch partner for [DeltaPrime](https://deltaprime.io/) on Avalanche and delivered data feeds not available anywhere else. Thanks to that DeltaPrime became the top 3 fastest growing dApps according to DefiLama. ### EVM-compatible chains[​](https://docs.redstone.finance/docs/smart-contract-devs/chain-integration#evm-compatible-chains "Direct link to EVM-compatible chains") integration @@ -40,8 +40,8 @@ If you want to test your chain there is an example contract and script [here](h 1. Deploy integration example contract to your chain 2. Fill in missing parameters and run an example Typescript script that does the following things: -* fetches data from the decentralized cache layer, -* adds signed price data to transaction data, -* interacts with the contract and receives price data. +* fetches data from the decentralized cache layer, +* adds signed price data to transaction data, +* interacts with the contract and receives price data. You should be able to see price data logged to the console. diff --git a/docs/dev-tools/rpc-providers/chainstack.md b/docs/dev-tools/rpc-providers/chainstack.md index cd04de21..166f2495 100644 --- a/docs/dev-tools/rpc-providers/chainstack.md +++ b/docs/dev-tools/rpc-providers/chainstack.md @@ -15,9 +15,9 @@ Chainstack makes sure you get access to robust and scalable infrastructure, read Elastic Aurora RPC nodes\* provide personal, and protected API endpoints you can immediately start using to interact with both [NEAR](https://chainstack.com/build-better-with-near/) networks through your Aurora RPC nodes, starting at $0 per month.\ **Chainstack elastic Aurora RPC nodes** -* Unlimited requests, no rate limiting or throttling -* Rapid deployment through Bolt -* Secure HTTP +* Unlimited requests, no rate limiting or throttling +* Rapid deployment through Bolt +* Secure HTTP ## Aurora RPC archive nodes @@ -35,8 +35,8 @@ Chainstack’s dedicated nodes are a go-to for request-intensive workloads on [N **Chainstack dedicated Aurora RPC nodes** -* Unlimited requests, no rate limiting or throttling -* Rapid deployment through Bolt +* Unlimited requests, no rate limiting or throttling +* Rapid deployment through Bolt ## Chainstack Marketplace @@ -60,8 +60,8 @@ Deploy an elastic or dedicated Aurora RPC node on testnet or mainnet 6. Under **Hosting**, select **Chainstack** or **Private**. See [Support hosting options](https://docs.chainstack.com/platform/supported-hosting-options). - * For Chainstack hosting, select a cloud provider and a region. - * For private hosting, select or add an integration. See [Manage your organization integrations](https://docs.chainstack.com/platform/manage-your-organization-integrations). + * For Chainstack hosting, select a cloud provider and a region. + * For private hosting, select or add an integration. See [Manage your organization integrations](https://docs.chainstack.com/platform/manage-your-organization-integrations). 7. Provide a node name. Click **Next**. @@ -82,8 +82,8 @@ You can set your [MetaMask](https://metamask.io/)[ ](https://metamask.io/)to int 3. In the **New RPC URL** field, enter the endpoint. 4. In the **Chain ID** field, enter the ID of the network: -* Mainnet: `1313161554` -* Testnet: `1313161555` +* Mainnet: `1313161554` +* Testnet: `1313161555` ### Development Tools @@ -132,8 +132,8 @@ module.exports = { where -* `ENDPOINT` — your node `HTTPS` or `WSS` endpoint. -* `PRIVATE_KEY` — the private key of the account that you use to deploy the contract. +* `ENDPOINT` — your node `HTTPS` or `WSS` endpoint. +* `PRIVATE_KEY` — the private key of the account that you use to deploy the contract. Example: @@ -171,7 +171,7 @@ ja where -* ENDPOINT — your node HTTPS endpoint. +* ENDPOINT — your node HTTPS endpoint. Example to get the latest block number: @@ -195,7 +195,7 @@ const web3 = new Web3(new Web3.providers.WebsocketProvider('ENDPOINT')); where -* ENDPOINT — your node WSS endpoint. +* ENDPOINT — your node WSS endpoint. Example to get the latest block number: @@ -226,10 +226,10 @@ web3 = Web3(Web3.HTTPProvider('ENDPOINT')) where -* ENDPOINT — your node HTTPS endpoint. -* HOSTNAME — your node HTTPS endpoint hostname. -* USERNAME — your node access username. -* PASSWORD — your node access password. +* ENDPOINT — your node HTTPS endpoint. +* HOSTNAME — your node HTTPS endpoint hostname. +* USERNAME — your node access username. +* PASSWORD — your node access password. Example to get the latest block number: @@ -252,10 +252,10 @@ web3 = Web3(Web3.WebsocketProvider('ENDPOINT')) where -* ENDPOINT — your node WSS endpoint. -* HOSTNAME — your node WSS endpoint hostname. -* USERNAME — your node access username. -* PASSWORD — your node access password. +* ENDPOINT — your node WSS endpoint. +* HOSTNAME — your node WSS endpoint hostname. +* USERNAME — your node access username. +* PASSWORD — your node access password. Example to get the latest block number: @@ -333,16 +333,16 @@ var provider = new ethers.providers.JsonRpcProvider(urlInfo, NETWORK_ID); where -* ENDPOINT — your node HTTPS endpoint. +* ENDPOINT — your node HTTPS endpoint. -* USERNAME — your node access username. +* USERNAME — your node access username. -* PASSWORD — your node access password. +* PASSWORD — your node access password. -* NETWORK_ID — Aurora network ID: +* NETWORK_ID — Aurora network ID: - * Mainnet: `1313161554` - * Testnet: `1313161555` + * Mainnet: `1313161554` + * Testnet: `1313161555` Example to get the latest block number on mainnet: @@ -369,12 +369,12 @@ const provider = new ethers.providers.WebSocketProvider('ENDPOINT', NETWORK_ID); where -* ENDPOINT — your node WSS endpoint. +* ENDPOINT — your node WSS endpoint. -* NETWORK_ID — Aurora network ID: +* NETWORK_ID — Aurora network ID: - * Mainnet: `1313161554` - * Testnet: `1313161555` + * Mainnet: `1313161554` + * Testnet: `1313161555` Example to get the latest block number on mainnet: @@ -397,16 +397,16 @@ brownie networks add Aurora ID name="NETWORK_NAME" host=KEY_ENDPOINT chainid=NET where -* ID — any name that you will use as the network tag to run a deployment. For example, `chainstack-mainnet`. +* ID — any name that you will use as the network tag to run a deployment. For example, `chainstack-mainnet`. -* NETWORK_NAME — any name that you want to identify the network by in the list of networks. For example, **Mainnet (Chainstack)**. +* NETWORK_NAME — any name that you want to identify the network by in the list of networks. For example, **Mainnet (Chainstack)**. -* ENDPOINT — your node HTTPS or WSS endpoint. +* ENDPOINT — your node HTTPS or WSS endpoint. -* NETWORK_ID — Aurora network ID: +* NETWORK_ID — Aurora network ID: - * Mainnet: `1313161554` - * Testnet: `1313161555` + * Mainnet: `1313161554` + * Testnet: `1313161555` Example to add an Aurora mainnet node to the list of Brownie networks: @@ -437,10 +437,10 @@ forge create CONTRACT_NAME --contracts CONTRACT_PATH --private-key PRIVATE_KEY - where -* CONTRACT_NAME — name of the contract in the Solidity source code. -* CONTRACT_PATH — path to your smart contract. -* PRIVATE_KEY — the private key to your funded account that you will use to deploy the contract. -* ENDPOINT — your node HTTPS endpoint. +* CONTRACT_NAME — name of the contract in the Solidity source code. +* CONTRACT_PATH — path to your smart contract. +* PRIVATE_KEY — the private key to your funded account that you will use to deploy the contract. +* ENDPOINT — your node HTTPS endpoint. Example to deploy the [simple storage ](https://docs.soliditylang.org/en/latest/introduction-to-smart-contracts.html)contract: diff --git a/docs/dev-tools/rpc-providers/now-nodes.md b/docs/dev-tools/rpc-providers/now-nodes.md index 6db081d2..172427f1 100644 --- a/docs/dev-tools/rpc-providers/now-nodes.md +++ b/docs/dev-tools/rpc-providers/now-nodes.md @@ -13,22 +13,22 @@ With a user-friendly interface and comprehensive documentation, your Aurora main To access the Aurora RPC node and Aurora endpoint with NOWNodes, you can follow these steps: -* Move on to the NOWNodes website at [https://nownodes.io/](https://nownodes.io/) for signing up for an account if you [haven’t done](https://account.nownodes.io/auth/signup) it already. -* Choose a tariff plan and select the network you want to access (in this case, Aurora mainnet). For example, you have an opportunity to pick up a **free** plan on a **START** plan and access 5 blockchains through a private API key: +* Move on to the NOWNodes website at [https://nownodes.io/](https://nownodes.io/) for signing up for an account if you [haven’t done](https://account.nownodes.io/auth/signup) it already. +* Choose a tariff plan and select the network you want to access (in this case, Aurora mainnet). For example, you have an opportunity to pick up a **free** plan on a **START** plan and access 5 blockchains through a private API key: ![](https://www.datocms-assets.com/95026/1695246607-aurora-nodes-768x398.jpg) -* Create your crypto API key in your NOWNodes account dashboard: +* Create your crypto API key in your NOWNodes account dashboard: ![](https://www.datocms-assets.com/95026/1695246672-aurora-blockchain-768x442.jpg) ![](https://www.datocms-assets.com/95026/1695246688-aurora-api-768x433.jpg) -* Once your Aurora API key is generated, [explore the docs](https://documenter.getpostman.com/view/13630829/TVmFkLwy#0009132c-1d48-4c03-a891-fe57630776a4) and find the Aurora endpoint (aurora.nownodes.io): +* Once your Aurora API key is generated, [explore the docs](https://documenter.getpostman.com/view/13630829/TVmFkLwy#0009132c-1d48-4c03-a891-fe57630776a4) and find the Aurora endpoint (aurora.nownodes.io): ![](https://www.datocms-assets.com/95026/1695246711-aurora-endpoint-768x416.jpg) -* Now, you can use the copied Aurora endpoint URL and Aurora API key to connect to the node in your application or development environment. +* Now, you can use the copied Aurora endpoint URL and Aurora API key to connect to the node in your application or development environment. Using the RPC node provider like NOWNodes to access the Aurora mainnet RPC offers a reliable, scalable, and user-friendly solution that allows you to interact with the blockchain efficiently. With NOWNodes developers can integrate the Aurora API key into their development workflow, allowing them to interact with the blockchain seamlessly. diff --git a/docs/dev-tools/rpc-providers/omnia-protocol.md b/docs/dev-tools/rpc-providers/omnia-protocol.md index f679bc91..267a3c7b 100644 --- a/docs/dev-tools/rpc-providers/omnia-protocol.md +++ b/docs/dev-tools/rpc-providers/omnia-protocol.md @@ -19,8 +19,8 @@ OMNIA’s availability is guaranteed by thousands of nodes distributed worldwide ## Public RPC Endpoints[​](https://doc.aurora.dev/integrate/rpc-node-providers/omnia#public-rpc-endpoints "Direct link to heading") -* Aurora Mainnet: [https://endpoints.omniatech.io/v1/aurora/mainnet/public](https://endpoints.omniatech.io/v1/aurora/mainnet/public) -* Aurora Testnet: [https://endpoints.omniatech.io/v1/aurora/testnet/public](https://endpoints.omniatech.io/v1/aurora/testnet/public) +* Aurora Mainnet: [https://endpoints.omniatech.io/v1/aurora/mainnet/public](https://endpoints.omniatech.io/v1/aurora/mainnet/public) +* Aurora Testnet: [https://endpoints.omniatech.io/v1/aurora/testnet/public](https://endpoints.omniatech.io/v1/aurora/testnet/public) Easily create your own RPC Endpoints on our [Dapp](https://app.omniatech.io/)