Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/01-concepts/rif-suite/flyover/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
sidebar_position: 100
title: rBTC Flyover
tags: [rsk, rootstock, rif, flyover, integrate, integration guide, rbtc, powpeg]
description: The RBTC Flyover enables fast, trust-minimized onboarding of users into the Rootstock ecosystem from Bitcoin with less friction. It improves the usability for bitcoiners and integrators to interact with the Rootstock ecosystem via the Powpeg and Flyover SDK.
description: The rBTC Flyover enables fast, trust-minimized onboarding of users into the Rootstock ecosystem from Bitcoin with less friction. It improves the usability for bitcoiners and integrators to interact with the Rootstock ecosystem via the Powpeg and Flyover SDK.

Check failure on line 6 in docs/01-concepts/rif-suite/flyover/index.md

View workflow job for this annotation

GitHub Actions / lint

[vale] reported by reviewdog 🐶 [Rootstock.602-Rootstock-product-names] Use 'PowPeg' instead of 'Powpeg' Raw Output: {"message": "[Rootstock.602-Rootstock-product-names] Use 'PowPeg' instead of 'Powpeg'", "location": {"path": "docs/01-concepts/rif-suite/flyover/index.md", "range": {"start": {"line": 6, "column": 249}}}, "severity": "ERROR"}
---

Flyover accelerates getting into Rootstock from Bitcoin by significantly reducing the wait times associated with the current PowPeg time. Developers, integrators or Liquidity Providers (LP) looking to provide rBTC access, Cross-chain swaps, and access to liquidity pools can integrate the Flyover SDK. Visit the [ LP integration section](/developers/integrate/flyover/LP/) to get started.
Expand Down Expand Up @@ -78,7 +78,7 @@

3. Increased security: Flyover is built on top of the proven security of the PowPeg.

Want to integrate the Flyover in your Exchange, dApp, Wallet or DeFi platform? See the section on [how to Integrate Flyover SDK](/developers/integrate/flyover/sdk/).
Want to integrate the Flyover in your Exchange, dApp, Wallet or DeFi platform? See the section on [How to Integrate Flyover SDK](/developers/integrate/flyover/sdk/).


### For Liquidity Providers (LP)
Expand Down
2 changes: 1 addition & 1 deletion docs/02-developers/02-requirements/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ This guide provides clear instructions for developers on the supported Solidity
Set up the necessary software for a seamless development experience:

- **Solidity Version:**
- Supported compiler version: **`solc 0.8.25`**.
- Supported compiler version: **`solc ^0.8.25`**.
- Use compatible versions to avoid deployment errors.

- **Node RPC Access:**
Expand Down
29 changes: 17 additions & 12 deletions docs/02-developers/04-quickstart/web3-python.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ Next, add the Solidity code to the file:
```s
// SPDX-License-Identifier: MIT

pragma solidity >0.5.0;
pragma solidity ^0.8.25;

contract Greeter {
string public greeting;
Expand Down Expand Up @@ -181,10 +181,10 @@ web3 = Web3(Web3.HTTPProvider(RPC_PROVIDER_URL))

```text
# Set the default account
PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
ACCOUNT_PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
account_from = {
'private_key': PRIVATE_KEY,
'address': web3.eth.account.from_key(PRIVATE_KEY).address
'private_key': ACCOUNT_PRIVATE_KEY,
'address': web3.eth.account.from_key(ACCOUNT_PRIVATE_KEY).address
}
```

Expand Down Expand Up @@ -354,10 +354,10 @@ web3 = Web3(Web3.HTTPProvider(RPC_PROVIDER_URL))


# Set the default account
PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
ACCOUNT_PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
account_from = {
'private_key': PRIVATE_KEY,
'address': web3.eth.account.from_key(PRIVATE_KEY).address
'address': web3.eth.account.from_key(ACCOUNT_PRIVATE_KEY).address
}

# Create address variable
Expand Down Expand Up @@ -386,6 +386,11 @@ txn_receipt = web3.eth.wait_for_transaction_receipt(txn_hash)
print(f"Transaction successful with hash: { txn_receipt.transactionHash.hex() }")
```

:::warning[CAUTION]

This example broadcasts on **testnet** and requires tRBTC.
:::

If successful, the transaction hash will be displayed in the terminal.

```python
Expand Down Expand Up @@ -472,7 +477,7 @@ Next, you will create the script for this file and complete the following steps:

1. Add imports, including `Web3.py` and the `rpc_gas_price_strategy`, which will be used in the following steps to get the gas price used for the transaction
2. Set up the Web3 provider
3. Define the `account_from`, including the `private_key`, and the `address_to` variables. The private key is required to sign the transaction. Note: This is for example purposes only. Never store your private keys in your code
3. Define the `account_from`, including the `private_key`, and the `address_to` variables. The private key is required to sign the transaction. Note: This is for testing purposes only. Never store your private keys in your code
4. Use the `Web3.py` Gas Price API to set a gas price strategy. For this example, you'll use the imported `rpc_gas_price_strategy`. This is important because otherwise the Web3 library will attempt to use `eth_maxPriorityFeePerGas` and `eth_feeHistory` RPC methods, which are only supported by post-London Ethereum nodes.
5. Create and sign the transaction using the `web3.eth.account.sign_transaction` function. Pass in the `nonce`, `gas`, `gasPrice`, `to`, and value for the transaction along with the sender's `private_key`. To get the `nonce` you can use the `web3.eth.get_transaction_count` function and pass in the sender's address. To predetermine the `gasPrice` you'll use the `web3.eth.generate_gas_price` function. For the value, you can format the amount to send from an easily readable format to Wei using the `web3.to_wei` function
6. Using the signed transaction, you can then send it using the `web3.eth.send_raw_transaction` function and wait for the transaction receipt by using the `web3.eth.wait_for_transaction_receipt` function
Expand All @@ -495,10 +500,10 @@ web3 = Web3(Web3.HTTPProvider(RPC_PROVIDER_URL))


# Set the default account
PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
ACCOUNT_PRIVATE_KEY = os.getenv('ACCOUNT_PRIVATE_KEY')
account_from = {
'private_key': PRIVATE_KEY,
'address': web3.eth.account.from_key(PRIVATE_KEY).address
'private_key': ACCOUNT_PRIVATE_KEY,
'address': web3.eth.account.from_key(ACCOUNT_PRIVATE_KEY).address
}
address_to = '0xcff73226883c1cE8b3bcCc28E45c3c92C843485c'

Expand Down Expand Up @@ -565,8 +570,8 @@ In this guide, we learnt how to use the Web3.py library to deploy, interact with

w3 = Web3(EthereumTesterProvider())

private_key = os.environ.get("PRIVATE_KEY")
assert private_key is not None, "You must set PRIVATE_KEY environment variable"
private_key = os.environ.get("ACCOUNT_PRIVATE_KEY")
assert private_key is not None, "You must set ACCOUNT_PRIVATE_KEY environment variable"
assert private_key.startswith("0x"), "Private key must start with 0x hex prefix"

account: LocalAccount = Account.from_key(private_key)
Expand Down
Loading
Loading