diff --git a/docs/build/basics/fees.md b/docs/build/basics/fees.md index 773aa59f86..23e257eb7c 100644 --- a/docs/build/basics/fees.md +++ b/docs/build/basics/fees.md @@ -125,7 +125,7 @@ You should see the `computationUsed` field. Take a note of the value, you will u **On testnet or mainnet** -Once a transaction is completed, you can use an explorer like [Flowscan](https://flowscan.org/) to review the transaction details and events emitted. For Flowscan, you can open the transaction in question and look for the event `FeesDeducted` from the [`FlowFees`](https://github.com/onflow/flow-core-contracts/blob/master/contracts/FlowFees.cdc) contract: +Once a transaction is completed, you can use an explorer like [Flowdiver](https://flowdiver.io/) to review the transaction details and events emitted. For Flowdiver, you can open the transaction in question and look for the event `FeesDeducted` from the [`FlowFees`](https://github.com/onflow/flow-core-contracts/blob/master/contracts/FlowFees.cdc) contract: ![flowscan-fees](./_fees_images/flowscan-fees.png) diff --git a/docs/build/building-vs-other-chains.md b/docs/build/building-vs-other-chains.md index c09eb56e03..2409f8b76f 100644 --- a/docs/build/building-vs-other-chains.md +++ b/docs/build/building-vs-other-chains.md @@ -177,7 +177,7 @@ If you’re already familiar with blockchain development, here's a comparison be - [hardhat](https://hardhat.org/) / [Truffle](https://trufflesuite.com/) / [Foundry](https://github.com/foundry-rs/foundry) - [Flow CLI](https://github.com/onflow/flow-cli/) provides local development tools and the [Flow Emulator](https://github.com/onflow/flow-emulator) - [OpenZeppelin](https://www.openzeppelin.com/) - - No equivalent, you can pick contracts from any core Flow contract repository + - [Emerald OZ](https://oz.ecdao.org/overview) - [go-ethereum](https://geth.ethereum.org/) - [Flow Go SDK](https://github.com/onflow/flow-go-sdk/) - [FCL](https://github.com/onflow/fcl-js/) also provides Backend API for Flow in JS diff --git a/docs/build/cadence.md b/docs/build/cadence.md index 765e85db90..a841725017 100644 --- a/docs/build/cadence.md +++ b/docs/build/cadence.md @@ -40,7 +40,7 @@ Cadence, a new high-level programming language, observes the following requireme Security is the prevention of attacks on the network or smart contracts (i.e., unauthorized actions by malicious actors). Safety and security are critical in smart contracts because of the immutable nature of blockchains, and because they often deal with high-value assets. While auditing and reviewing code will be a crucial part of smart contract development, -Cadence maximizes efficiency while maintaining the highest levels of safety and security at its foundation. +Cadence maximizes efficiency while maintaining the highest levels of safety and security. It accomplishes this via a strong static type system, design by contract, and ownership primitives inspired by linear types (which are useful when dealing with assets). - **Clarity:** Code needs to be easy to read, and its meaning should be as unambiguous as possible. It should also be suited for verification so that tooling can help with ensuring safety and security guarantees. diff --git a/docs/build/getting-started/quickstarts/fcl-quickstart.md b/docs/build/getting-started/quickstarts/fcl-quickstart.md index 60e2a8f58f..ded4343bda 100644 --- a/docs/build/getting-started/quickstarts/fcl-quickstart.md +++ b/docs/build/getting-started/quickstarts/fcl-quickstart.md @@ -4,7 +4,7 @@ sidebar_position: 3 # Hello World Pt. 3 - Interacting with the Blockchain -FCL, or Flow Client Library, is a JavaScript library developed to facilitate interactions with the Flow blockchain. It provides developers with tools to build, integrate, and interact with Flow directly from web applications. This web app quickstart will get you interacting with a contract already deployed to Flow. +Flow Client Library (FCL), is a JavaScript library developed to facilitate interactions with the Flow blockchain. It provides developers with tools to build, integrate, and interact with Flow directly from web applications. This web app quickstart will get you interacting with a contract already deployed to Flow. For this tutorial, we're going to be making a [React](https://react.dev/learn) app with [Create React App](https://create-react-app.dev/). We'll try and keep the code as simple as possible in case you're coming from another framework. diff --git a/docs/build/getting-started/quickstarts/flow-cli.md b/docs/build/getting-started/quickstarts/flow-cli.md index a9c75a93e5..c2a37069e7 100644 --- a/docs/build/getting-started/quickstarts/flow-cli.md +++ b/docs/build/getting-started/quickstarts/flow-cli.md @@ -4,7 +4,7 @@ sidebar_position: 2 # Hello World Pt. 2 - Local Development -The Flow CLI (Command Line Interface) is a set of tools that developers can use to interact with the Flow blockchain by managing accounts, sending transactions, deploying smart contracts, running the emulator, and more. This quickstart will get you familiar with its main concepts and functionality. +The Flow Command Line Interface (CLI) is a set of tools that developers can use to interact with the Flow blockchain by managing accounts, sending transactions, deploying smart contracts, running the emulator, and more. This quickstart will get you familiar with its main concepts and functionality. ## Installation @@ -18,7 +18,7 @@ For other ways of installing, please [refer to the installation guide](../../../ ## Configuration -Let's first create a directory, then setup a project. +Let's first create a directory, then set up a project. ``` mkdir cli-quickstart @@ -30,13 +30,13 @@ And then let's navigate to our new directory: cd cli-quickstart ``` -Let's first create a `flow.json` file for our project (we'll use this in a later step, but this is a good spot to bring it up). The `flow.json` file is a configuration file used by the Flow CLI when interacting with the Flow blockchain. It helps manage various project-specific settings, such as network configurations, account details, contract names and source files, and deployment targets. To create one, run: +Let's first create a `flow.json` file for our project. We'll use this in a later step, but this is a good spot to bring it up. The `flow.json` file is a configuration file used by the Flow CLI when interacting with the Flow blockchain. It helps manage various project-specific settings, such as network configurations, account details, contract names and source files, and deployment targets. To create one, run: ``` flow init ``` -If you look at `flow.json` now you'll see it's listed access nodes for networks and accounts. The default `emulator-account` create will come in handy when we want to run the emulator. +If you look at `flow.json` now, you'll see its listed access nodes for networks and accounts. The default `emulator-account` create will come in handy when we want to run the emulator. ## Running Scripts @@ -118,7 +118,7 @@ Next we'll add a contracts section to our `flow.json` configuration that will de } ``` -We're also going to change the imports of our script so that there are no hardcoded network specific addresses. The CLI can figure out how to interact with the network (ie. emulator, testnet or mainnet) based on our configuration. +We're also going to change the imports of our script so that there are no hardcoded network specific addresses. The CLI can figure out how to interact with the network (i.e. emulator, testnet or mainnet) based on our configuration. ``` // script.cdc @@ -166,9 +166,9 @@ flow scripts execute script.cdc --network emulator ## Creating an Account and Running a Transaction -To change state on the Flow Blockchain, you need to run a transaction. Let's create a simple transaction file, we can use to modify the `greeting` on the `HelloWorld` contract. +To change state on the Flow Blockchain, you need to run a transaction. Let's create a simple transaction file. We can use to modify the `greeting` on the `HelloWorld` contract. -First, create file called `transaction.cdc` from the root of your project: +First, create a file called `transaction.cdc` from the root of your project: ``` touch transaction.cdc @@ -191,9 +191,9 @@ transaction(greeting: String) { } ``` -This will log the account signing the transaction and call the `changeGreeting` method of the `HelloWorld` contract, and pass in the new greeting. (If you want to learn more about writing transactions, please [read here](../../basics/transactions.md)). +This will log the account signing the transaction, call the `changeGreeting` method of the `HelloWorld` contract, and pass in the new greeting. (If you want to learn more about writing transactions, please [read here](../../basics/transactions.md)). -In order to run a transaction, the signing account needs to pay for it. We could run a transaction on emulator using the default `emulator-account` account, let's learn one more command for creating accounts. +In order to run a transaction, the signing account needs to pay for it. We could run a transaction on emulator using the default `emulator-account` account. Let's learn one more command for creating accounts. The easiest way to create an account using CLI is by running (remember, your emulator should still be running at this point in another terminal): diff --git a/docs/build/mobile/react-native-quickstart.mdx b/docs/build/mobile/react-native-quickstart.md similarity index 96% rename from docs/build/mobile/react-native-quickstart.mdx rename to docs/build/mobile/react-native-quickstart.md index 228a637f64..e1460b6ef4 100644 --- a/docs/build/mobile/react-native-quickstart.mdx +++ b/docs/build/mobile/react-native-quickstart.md @@ -12,9 +12,9 @@ sidebar_position: 3 FCL-JS is the easiest way to start building decentralized applications. FCL (aka Flow Client Library) wraps much of the logic you'd have to write yourself on other blockchains. Follow this quick start and you'll have a solid overview of how to build a shippable dapp on Flow. -We're going to make an assumption that you know or understand React; however, the concepts should be easy to understand and transfer to another framework. While this tutorial will make use of Cadence (Flow's smart contract language), you do not need to know it. Instead, we recommend later diving into [learning the Cadence language](../../build/cadence.md) once you've gotten the core FCL concepts down. +We're going to make an assumption that you know or understand React; however, the concepts should be easy to understand and transfer to another framework. While this tutorial will make use of Cadence (Flow's smart contract language), you do not need to know it. Instead, we recommend later diving into [learning the Cadence language](../cadence.md) once you've gotten the core FCL concepts down. -In this tutorial, we are going to interact with an existing smart contract on Flow's testnet known as the [Profile Contract](https://testnet.flowscan.org/contract/A.ba1132bc08f82fe2.Profile). Using this contract, we will create a new profile and edit the profile information, both via a wallet. In order to do this, the FCL concepts we'll cover are: +In this tutorial, we are going to interact with an existing smart contract on Flow's testnet known as the [Profile Contract](https://testnet.flowdiver.io/contract/A.ba1132bc08f82fe2.Profile). Using this contract, we will create a new profile and edit the profile information, both via a wallet. In order to do this, the FCL concepts we'll cover are: - [Installation](#installation) - [Configuration](#configuration) @@ -196,7 +196,7 @@ config({ }) ``` -If you want to see the on chain smart contract we'll be speaking with next, you can view the [Profile Contract](https://testnet.flowscan.org/contract/A.ba1132bc08f82fe2.Profile) source code but again for this tutorial it's not necessary you understand it. +If you want to see the on chain smart contract we'll be speaking with next, you can view the [Profile Contract](https://testnet.flowdiver.io/contract/A.ba1132bc08f82fe2.Profile) source code but again for this tutorial it's not necessary you understand it. **First, lets query the contract to see what the user's profile name is.** @@ -301,13 +301,13 @@ Go ahead and click the "Send Query" button. You should see "No Profile." That's ## Initializing the Account -For the Profile contract to store a Profile in a user's account, it does so by initializing what is called a "resource." A resource is an ownable piece of data and functionality that can live in the user's account storage. This paradigm is known is as "resource-oriented-programming", a principle that is core to Cadence and differentiates its ownership model from other smart contract languages, [read more here](../../build/cadence.md#intuiting-ownership-with-resources). Cadence makes it so that resources can only exist in one place at any time, they must be deliberately created, cannot be copied, and if desired, must be deliberately destroyed. +For the Profile contract to store a Profile in a user's account, it does so by initializing what is called a "resource." A resource is an ownable piece of data and functionality that can live in the user's account storage. This paradigm is known is as "resource-oriented-programming", a principle that is core to Cadence and differentiates its ownership model from other smart contract languages, [read more here](../cadence.md#intuiting-ownership-with-resources). Cadence makes it so that resources can only exist in one place at any time, they must be deliberately created, cannot be copied, and if desired, must be deliberately destroyed. -> There's a lot more to resources in Cadence than we'll cover in this guide, so if you'd like to know more, check out [this Cadence intro](../../build/cadence.md). +> There's a lot more to resources in Cadence than we'll cover in this guide, so if you'd like to know more, check out [this Cadence intro](../cadence.md). To do this resource initialization on an account, we're going to add another function called `initAccount`. Inside of that function, we're going to add some Cadence code which says, *"Hey, does this account have a profile? If it doesn't, let's add one."* We do that using something called a "transaction." Transactions occur when you want to change the state of the blockchain, in this case, some data in a resource, in a specific account. And there is a cost (transaction fee) in order to do that; unlike a query. -That's where we jump back into FCL code. Instead of `query`, we use `mutate` for transactions. And because there is a cost, we need to add a few fields that tell Flow who is proposing the transaction, who is authorizing it, who is paying for it, and how much they're willing to pay for it. Those fields — not surprisingly — are called: `proposer`, `authorizer`, `payer`, and `limit`. For more information on these signatory roles, check out [this doc](../../build/basics/transactions.md#signer-roles). +That's where we jump back into FCL code. Instead of `query`, we use `mutate` for transactions. And because there is a cost, we need to add a few fields that tell Flow who is proposing the transaction, who is authorizing it, who is paying for it, and how much they're willing to pay for it. Those fields — not surprisingly — are called: `proposer`, `authorizer`, `payer`, and `limit`. For more information on these signatory roles, check out [this doc](../basics/transactions.md#signer-roles). Let's take a look at what our account initialization function looks like: @@ -341,7 +341,7 @@ const initAccount = async () => { } ``` -You can see the new fields we talked about. You'll also notice `fcl.authz`. That's shorthand for "use the current user to authorize this transaction", (you could also write it as `fcl.currentUser.authorization`). If you want to learn more about transactions and signing transactions, you can [view the docs here](../../build/basics/transactions.md). For this example, we'll keep it simple with the user being each of these roles. +You can see the new fields we talked about. You'll also notice `fcl.authz`. That's shorthand for "use the current user to authorize this transaction", (you could also write it as `fcl.currentUser.authorization`). If you want to learn more about transactions and signing transactions, you can [view the docs here](../basics/transactions.md). For this example, we'll keep it simple with the user being each of these roles. You'll also notice we are awaiting a response with our transaction data by using the syntax `fcl.tx(transactionId).onceSealed()`. This will return when the blockchain has sealed the transaction and it's complete in processing it and verifying it. @@ -444,7 +444,7 @@ const styles = StyleSheet.create({ ``` -Press the "Init Account" button you should see the wallet ask you to approve a transaction. After approving, you will see a transaction response appear in your console (make sure to have that open). It may take a few moments. With the transaction result printed, you can use the `transactionId` to look up the details of the transaction using a [block explorer](https://testnet.flowscan.org). +Press the "Init Account" button you should see the wallet ask you to approve a transaction. After approving, you will see a transaction response appear in your console (make sure to have that open). It may take a few moments. With the transaction result printed, you can use the `transactionId` to look up the details of the transaction using a [block explorer](https://testnet.flowdiver.io/). ## Mutating the Blockchain diff --git a/docs/overview/dive-in/fungible-tokens.md b/docs/overview/dive-in/fungible-tokens.md index 84d3fb1211..7303ef154e 100644 --- a/docs/overview/dive-in/fungible-tokens.md +++ b/docs/overview/dive-in/fungible-tokens.md @@ -324,7 +324,7 @@ Some exchanges require payment of listing fees, but many do not. As a result, ma While this guide does not cover the technicals of creating your fungible token, please find a couple of resources that may be helpful as you get ready to launch your token: - [Flow Token List](https://github.com/FlowFans/flow-token-list) - How to add a token to the Flow native token list -- [Flowscan Request Form](https://docs.google.com/forms/d/e/1FAIpQLSdMiIkj2goF3Ib7wJHRb-YNvruwBghq1NP1IOfz4p2smIFp0w/viewform) - Please fill this out to update your token metadata on Flowscan +- [Flowdiver Request Form](https://docs.google.com/forms/d/e/1FAIpQLSdMiIkj2goF3Ib7wJHRb-YNvruwBghq1NP1IOfz4p2smIFp0w/viewform) - Please fill this out to update your token metadata on Flowdiver - [Flow Developer Portal](/) - Documentation, guides, and resources for developers building on Flow ## Final Words diff --git a/docs/references/run-and-secure/node-operation/FAQ.md b/docs/references/run-and-secure/node-operation/FAQ.md index b94f7a0a33..5a4338d753 100644 --- a/docs/references/run-and-secure/node-operation/FAQ.md +++ b/docs/references/run-and-secure/node-operation/FAQ.md @@ -54,7 +54,7 @@ More on this [here](./node-migration.mdx) ### Where can I find how many nodes are currently running Flow? -If you are running a node, then you most definitely have this information on your node in the file `/public-root-information/node-infos.pub.json`. If you are not running a node, you can find this information by using a Cadence script to query the [Staking Smart Contract](../../../references/core-contracts/06-staking-contract-reference.md) (or check [Flowscan](https://flowscan.org/staking/overview)) +If you are running a node, then you most definitely have this information on your node in the file `/public-root-information/node-infos.pub.json`. If you are not running a node, you can find this information by using a Cadence script to query the [Staking Smart Contract](../../../references/core-contracts/06-staking-contract-reference.md) (or check [Flowdiver](https://flowdiver.io/staking/overview)) ### Why do I need to update my node's ulimit? diff --git a/docs/references/run-and-secure/node-operation/index.md b/docs/references/run-and-secure/node-operation/index.md index 05038e6dc7..fd22b5d2d1 100644 --- a/docs/references/run-and-secure/node-operation/index.md +++ b/docs/references/run-and-secure/node-operation/index.md @@ -52,7 +52,7 @@ The Archive node follows the chain, stores and indexes both protocol and executi It also allows script execution and other read-only queries that require the execution state to be read. It can answer any queries from past data e.g. “what was the Flow account balance at height X?”, where X is several thousand blocks in the past. -_The archive node is currently in beta and will be available as a GA release in H2 2023 (see [here](https://flow.com/post/flow-blockchain-node-operation-archive-node) for more)_ +_The archive node is currently in beta and will be available as a GA release in H2 2023 (see [here](https://flow.com/post/flow-blockchain-node-operation-archive-node) for more)._ ## Full node diff --git a/docs/references/run-and-secure/nodes/faq/backers.mdx b/docs/references/run-and-secure/nodes/faq/backers.mdx index caecfb0d84..4c1af49e29 100644 --- a/docs/references/run-and-secure/nodes/faq/backers.mdx +++ b/docs/references/run-and-secure/nodes/faq/backers.mdx @@ -7,7 +7,7 @@ description: FAQ There are two block explorers live today. You can find them here: -- https://flowscan.org/ +- https://flowdiver.io/ - https://flow.bigdipper.live/ ## I staked and now I can't see my FLOW - what happened? diff --git a/docs/references/run-and-secure/nodes/faq/developers.mdx b/docs/references/run-and-secure/nodes/faq/developers.mdx index 305a84d731..be17a6fde1 100644 --- a/docs/references/run-and-secure/nodes/faq/developers.mdx +++ b/docs/references/run-and-secure/nodes/faq/developers.mdx @@ -12,7 +12,7 @@ Flow’s transaction throughput depends on a variety of factors, such as network There are two block explorers live today. You can find them here: -- https://flowscan.org/ +- https://flowdiver.io/ - https://flow.bigdipper.live/ ## How can I connect to and query the Access Nodes? What data is available there? diff --git a/docs/references/run-and-secure/nodes/faq/operators.mdx b/docs/references/run-and-secure/nodes/faq/operators.mdx index 22dd2b5105..f8f22fa0ec 100644 --- a/docs/references/run-and-secure/nodes/faq/operators.mdx +++ b/docs/references/run-and-secure/nodes/faq/operators.mdx @@ -16,7 +16,7 @@ Flow targets 1 second block times but the protocol is still early in its develop There are two block explorers live today. You can find them here: -- https://flowscan.org/ +- https://flowdiver.io/ - https://flow.bigdipper.live/ ## How can I connect to and query the Access Nodes? What data is available there? diff --git a/docs/tools/clients/unity-sdk/guides/flow-control.md b/docs/tools/clients/unity-sdk/guides/flow-control.md index 67977442b8..8cd2ed144b 100644 --- a/docs/tools/clients/unity-sdk/guides/flow-control.md +++ b/docs/tools/clients/unity-sdk/guides/flow-control.md @@ -55,7 +55,7 @@ The "+" button at the top will add a blank account entry for you to fill in. Th The emulator_service_account account will be created/updated each time you start the emulator so that it will always be valid. -If it is a Testnet account, a link to the Testnet Flowscan page for that account will be provided. Clicking on it will open the page in your default browser. +If it is a Testnet account, a link to the Testnet Flowdiver page for that account will be provided. Clicking on it will open the page in your default browser. ## FlowControl Text Replacement @@ -89,7 +89,7 @@ Contract is the cadence contract file that you want to deploy. Account is the account that should deploy the contract. The contract will be deployed to the same network that the account gateway uses. -The Deploy Contract button will attempt to deploy the contract. Check the emulator logs or flowscan.org to monitor the progress of deployment and check for errors. +The Deploy Contract button will attempt to deploy the contract. Check the emulator logs or flowdiver.io to monitor the progress of deployment and check for errors. The Update Contract button will attempt to update an existing contract. There are rules as to what can change in a contract for an update to be accepted. See [cadence/language/contract-updatability](../../../../cadence/language/contract-updatability.md) for more information. diff --git a/docs/tools/clients/unity-sdk/samples/flow-words-tutorial.md b/docs/tools/clients/unity-sdk/samples/flow-words-tutorial.md index a8b9fa6c84..a710640ed3 100644 --- a/docs/tools/clients/unity-sdk/samples/flow-words-tutorial.md +++ b/docs/tools/clients/unity-sdk/samples/flow-words-tutorial.md @@ -1182,7 +1182,7 @@ Where; Once you have the Manage Contracts section filled in as per the example, click Deploy Contract. -If all goes well, you will see the text 'Executing Transaction' appear below the Deploy Contract button, followed by a clickable link to the transaction result on flowscan. +If all goes well, you will see the text 'Executing Transaction' appear below the Deploy Contract button, followed by a clickable link to the transaction result on [Flowdiver](https://testnet.flowdiver.io/). Congratulations! You can now run FlowWords, and play the game with a WalletConnect compatible wallet! diff --git a/docs/tutorials/DappArchitectures.mdx b/docs/tutorials/DappArchitectures.md similarity index 99% rename from docs/tutorials/DappArchitectures.mdx rename to docs/tutorials/DappArchitectures.md index 03fbc2ec96..4838a98e0f 100644 --- a/docs/tutorials/DappArchitectures.mdx +++ b/docs/tutorials/DappArchitectures.md @@ -126,7 +126,7 @@ Ethereum is one of the major general-purpose smart contract blockchain platforms Common themes among dapps built on Ethereum: - **Interaction with wallets**: Most Ethereum dapps integrate with the web3js library in the frontend to abstract out interaction with wallets. Due to web3js, the dapps do not have to be aware of the intricacies of individual wallets. On the Flow blockchain, the equivalent of web3js is FCL. - **Managing blockchain transactions**: There is no official Ethereum node offering access APIs for submitting transactions. Ethereum dapp projects generally do not run their own full node. Instead, they rely on a service like that from Infura (or Alchemy) to reliably submit and manage their transactions. Alchemy provides services for the Flow blockchain as well. Tatum and Graffle provide equivalent services on the Flow blockchain as Infura on Ethereum. -- **Organizing/accessing blockchain data**: There are many mature Ethereum ecosystem projects like Etherscan that collect, maintain, and index blockchain data, and provide blockchain access services through APIs. Most Ethereum dapps use these services for querying the blockchain. Graffle and Flowscan are the equivalents of Etherscan on the Flow blockchain. +- **Organizing/accessing blockchain data**: There are many mature Ethereum ecosystem projects like Etherscan that collect, maintain, and index blockchain data, and provide blockchain access services through APIs. Most Ethereum dapps use these services for querying the blockchain. Graffle and Flowdiver are the equivalents of Etherscan on the Flow blockchain. - **Payment rails**: Due to the focus on decentralization Ethereum dapps mostly rely on tokens including stablecoins for payment on-ramp/off-ramp. diff --git a/docs/tutorials/dapp-infrastructure.md b/docs/tutorials/dapp-infrastructure.md index 41ce34a144..c039619587 100644 --- a/docs/tutorials/dapp-infrastructure.md +++ b/docs/tutorials/dapp-infrastructure.md @@ -30,7 +30,7 @@ Your dapp will also need to read data from Flow, and in particular, the state of ### Events -Events are data objects emitted at the end of a transaction that describe the state changes that occurred in the transaction. For example, a transaction that transfers FLOW tokens between accounts [will emit events](https://flowscan.org/transaction/2f50695c3c506b8214d18f49220c986d24d19d8762a2805b3609aee3d529de88) that describe the sender, recipient and amount of FLOW transferred. Event types are [defined inside your Cadence contracts](https://github.com/onflow/flow-core-contracts/blob/master/contracts/FlowToken.cdc#L8-L27). +Events are data objects emitted at the end of a transaction that describe the state changes that occurred in the transaction. For example, a transaction that transfers FLOW tokens between accounts [will emit events](https://flowdiver.io/transaction/2f50695c3c506b8214d18f49220c986d24d19d8762a2805b3609aee3d529de88) that describe the sender, recipient and amount of FLOW transferred. Event types are [defined inside your Cadence contracts](https://github.com/onflow/flow-core-contracts/blob/master/contracts/FlowToken.cdc#L8-L27). Events can be used to notify your off-chain infrastructure of important state changes in your smart contracts. For example, if a user purchases an NFT from your storefront smart contract, an event will be emitted that describes this purchase. Your web application, which displays the NFTs for sale, can then capture that event and remove the NFT from the sale list. diff --git a/docs/tutorials/fungible-tokens.md b/docs/tutorials/fungible-tokens.md index db63e0e1d5..fb3850248a 100644 --- a/docs/tutorials/fungible-tokens.md +++ b/docs/tutorials/fungible-tokens.md @@ -320,7 +320,7 @@ Some exchanges require payment of listing fees, but many do not. As a result, ma While this guide does not cover the technicals of creating your fungible token, please find a couple of resources that may be helpful as you get ready to launch your token: - [Flow Token List](https://github.com/FlowFans/flow-token-list) - how to add a token to the Flow native token list -- [Flowscan Request Form](https://docs.google.com/forms/d/e/1FAIpQLSdMiIkj2goF3Ib7wJHRb-YNvruwBghq1NP1IOfz4p2smIFp0w/viewform) | Token Metadata - please fill this out to update your token metadata on Flowscan +- [Flowdiver Request Form](https://docs.google.com/forms/d/e/1FAIpQLSdMiIkj2goF3Ib7wJHRb-YNvruwBghq1NP1IOfz4p2smIFp0w/viewform) | Token Metadata - please fill this out to update your token metadata on Flowdiver - [Flow Developer Portal](https://developers.flow.com) - documentation, guides, and resources for developers building on Flow ## Final Words diff --git a/docusaurus.config.js b/docusaurus.config.js index 8abea1d0d7..62beae2b2e 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -344,8 +344,8 @@ const config = { label: 'FCL', }, { - to: '/tools/flow-js-testing/', - label: 'JS Testing Library', + to: '/build/getting-started/testing', + label: 'Testing', }, { to: '/tools/flow-cli/', @@ -431,12 +431,12 @@ const config = { label: 'Network Status', }, { - href: 'https://flowscan.org/', - label: 'Flowscan Mainnet', + href: 'https://flowdiver.io/', + label: 'Flowdiver Mainnet', }, { - href: 'https://testnet.flowscan.org/', - label: 'Flowscan Testnet', + href: 'https://testnet.flowdiver.io/', + label: 'Flowdiver Testnet', }, { to: '/references/run-and-secure/node-operation/past-sporks/', diff --git a/src/data/tools/index.ts b/src/data/tools/index.ts index 7a9fcf6b74..b609800897 100644 --- a/src/data/tools/index.ts +++ b/src/data/tools/index.ts @@ -419,11 +419,12 @@ const flowRunnerTool: Tool = { // Explorers const flowScanTool: Tool = { - title: 'Flowscan', + title: 'Flowdiver', tags: ['metrics', 'lookup', 'mainnet'], - link: 'https://flowscan.org/', - iconSrc: 'https://flowscan.org/images/flowscan-logo-only.svg', - description: `Flowscan is a blockchain explorer that lets you browse all on-chain events, transactions, contracts, and accounts.`, + link: 'https://flowdiver.io/', + iconSrc: + 'https://pbs.twimg.com/profile_images/1693654862536331264/ViqtN5qj_400x400.jpg', + description: `Flowdiver is a blockchain explorer that lets you browse all on-chain events, transactions, contracts, and accounts.`, }; const flowViewSourceTool: Tool = { diff --git a/src/pages/getting-started.tsx b/src/pages/getting-started.tsx index 31afba4d27..e8121daadb 100644 --- a/src/pages/getting-started.tsx +++ b/src/pages/getting-started.tsx @@ -72,7 +72,7 @@ export default function GettingStarted(): JSX.Element { }, { title: 'Flow Block Explorer', - href: 'https://flowscan.org/', + href: 'https://flowdiver.io/', }, ], },