diff --git a/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-blockscout.jpg b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-blockscout.jpg new file mode 100644 index 000000000..757efff0c Binary files /dev/null and b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-blockscout.jpg differ diff --git a/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg index 481b2be60..310fe5672 100644 Binary files a/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg and b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg differ diff --git a/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success-blockscout.jpg b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success-blockscout.jpg new file mode 100644 index 000000000..f152f0747 Binary files /dev/null and b/.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success-blockscout.jpg differ diff --git a/SUMMARY.md b/SUMMARY.md index 6e94a9b52..469b050bb 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -1,207 +1,213 @@ # Table of contents -* [Welcome to Filecoin Docs](WELCOME.md) +- [Welcome to Filecoin Docs](WELCOME.md) ## Basics -* [What is Filecoin](basics/what-is-filecoin/README.md) - * [Crypto-economics](basics/what-is-filecoin/crypto-economics.md) - * [Blockchain](basics/what-is-filecoin/blockchain.md) - * [Storage model](basics/what-is-filecoin/storage-model.md) - * [Storage market](basics/what-is-filecoin/storage-market.md) - * [Retrieval market](basics/what-is-filecoin/retrieval-market.md) - * [Programming on Filecoin](basics/what-is-filecoin/programming-on-filecoin.md) - * [Networks](basics/what-is-filecoin/networks.md) -* [The blockchain](basics/the-blockchain/README.md) - * [Actors](basics/the-blockchain/actors.md) - * [Addresses](basics/the-blockchain/addresses.md) - * [Blocks and tipsets](basics/the-blockchain/blocks-and-tipsets.md) - * [Consensus](basics/the-blockchain/consensus.md) - * [Drand](basics/the-blockchain/drand.md) - * [Proofs](basics/the-blockchain/proofs.md) -* [Assets](basics/assets/README.md) - * [The FIL token](basics/assets/the-fil-token.md) - * [Wallets](basics/assets/wallets.md) - * [Metamask setup](basics/assets/metamask-setup.md) - * [Get FIL](basics/assets/get-fil.md) - * [Transfer FIL](basics/assets/transfer-fil.md) -* [Interplanetary consensus](basics/interplanetary-consensus.md) -* [How storage works](basics/how-storage-works/README.md) - * [Filecoin plus](basics/how-storage-works/filecoin-plus.md) - * [Storage onramps](basics/how-storage-works/storage-onramps.md) - * [Filecoin and IPFS](basics/how-storage-works/filecoin-and-ipfs.md) -* [How retrieval works](basics/how-retrieval-works/README.md) - * [Basic retrieval](basics/how-retrieval-works/basic-retrieval.md) - * [Serving retrievals](basics/how-retrieval-works/serving-retrievals.md) - * [Saturn](basics/how-retrieval-works/saturn.md) -* [Project and community](basics/project-and-community/README.md) - * [Forums and FIPs](basics/project-and-community/forums-and-FIPs.md) - * [Filecoin compared to](basics/project-and-community/filecoin-compared-to.md) - * [Filecoin FAQs](basics/project-and-community/filecoin-faqs.md) - * [Related projects](basics/project-and-community/related-projects.md) - * [Social media](basics/project-and-community/social-media.md) - * [The Filecoin project](basics/project-and-community/the-filecoin-project.md) - * [Ways to contribute](basics/project-and-community/ways-to-contribute.md) +- [What is Filecoin](basics/what-is-filecoin/README.md) + - [Crypto-economics](basics/what-is-filecoin/crypto-economics.md) + - [Blockchain](basics/what-is-filecoin/blockchain.md) + - [Storage model](basics/what-is-filecoin/storage-model.md) + - [Storage market](basics/what-is-filecoin/storage-market.md) + - [Retrieval market](basics/what-is-filecoin/retrieval-market.md) + - [Programming on Filecoin](basics/what-is-filecoin/programming-on-filecoin.md) + - [Networks](basics/what-is-filecoin/networks.md) +- [The blockchain](basics/the-blockchain/README.md) + - [Actors](basics/the-blockchain/actors.md) + - [Addresses](basics/the-blockchain/addresses.md) + - [Blocks and tipsets](basics/the-blockchain/blocks-and-tipsets.md) + - [Consensus](basics/the-blockchain/consensus.md) + - [Drand](basics/the-blockchain/drand.md) + - [Proofs](basics/the-blockchain/proofs.md) +- [Assets](basics/assets/README.md) + - [The FIL token](basics/assets/the-fil-token.md) + - [Wallets](basics/assets/wallets.md) + - [Metamask setup](basics/assets/metamask-setup.md) + - [Get FIL](basics/assets/get-fil.md) + - [Transfer FIL](basics/assets/transfer-fil.md) +- [Interplanetary consensus](basics/interplanetary-consensus.md) +- [How storage works](basics/how-storage-works/README.md) + - [Filecoin plus](basics/how-storage-works/filecoin-plus.md) + - [Storage onramps](basics/how-storage-works/storage-onramps.md) + - [Filecoin and IPFS](basics/how-storage-works/filecoin-and-ipfs.md) +- [How retrieval works](basics/how-retrieval-works/README.md) + - [Basic retrieval](basics/how-retrieval-works/basic-retrieval.md) + - [Serving retrievals](basics/how-retrieval-works/serving-retrievals.md) + - [Saturn](basics/how-retrieval-works/saturn.md) +- [Project and community](basics/project-and-community/README.md) + - [Forums and FIPs](basics/project-and-community/forums-and-FIPs.md) + - [Filecoin compared to](basics/project-and-community/filecoin-compared-to.md) + - [Filecoin FAQs](basics/project-and-community/filecoin-faqs.md) + - [Related projects](basics/project-and-community/related-projects.md) + - [Social media](basics/project-and-community/social-media.md) + - [The Filecoin project](basics/project-and-community/the-filecoin-project.md) + - [Ways to contribute](basics/project-and-community/ways-to-contribute.md) ## Storage providers -* [Basics](storage-providers/basics/README.md) - * [Quickstart guide](storage-providers/basics/quickstart-guide.md) -* [Filecoin economics](storage-providers/filecoin-economics/README.md) - * [Storage proving](storage-providers/filecoin-economics/storage-proving.md) - * [FIL collateral](storage-providers/filecoin-economics/fil-collateral.md) - * [Block rewards](storage-providers/filecoin-economics/block-rewards.md) - * [Slashing](storage-providers/filecoin-economics/slashing.md) - * [Committed capacity](storage-providers/filecoin-economics/committed-capacity.md) -* [Filecoin deals](storage-providers/filecoin-deals/README.md) - * [Storage deals](storage-providers/filecoin-deals/storage-deals.md) - * [Verified deals](storage-providers/filecoin-deals/verified-deals.md) - * [Filecoin programs and tools](storage-providers/filecoin-deals/filecoin-programs.md) - * [Snap deals](storage-providers/filecoin-deals/snap-deals.md) - * [Charging for data](storage-providers/filecoin-deals/charging-for-data.md) - * [Auxiliary services](storage-providers/filecoin-deals/auxiliary-services.md) - * [Return-on-investment](storage-providers/filecoin-deals/return-on-investment.md) -* [Architecture](storage-providers/architecture/README.md) - * [Software components](storage-providers/architecture/lotus-components.md) - * [Storage provider automation](storage-providers/architecture/lotus-automation.md) - * [Sealing pipeline](storage-providers/architecture/sealing-pipeline.md) - * [Sealing rate](storage-providers/architecture/sealing-rate.md) - * [Sealing-as-a-service](storage-providers/architecture/sealing-as-a-service.md) - * [Network indexer](storage-providers/architecture/network-indexer.md) -* [Infrastructure](storage-providers/infrastructure/README.md) - * [Storage](storage-providers/infrastructure/storage.md) - * [Network](storage-providers/infrastructure/network.md) - * [Backup and disaster recovery](storage-providers/infrastructure/backup-and-disaster-recovery.md) - * [Reference architectures](storage-providers/infrastructure/reference-architectures.md) -* [Skills](storage-providers/skills/README.md) - * [Linux](storage-providers/skills/linux.md) - * [Network](storage-providers/skills/network.md) - * [Security](storage-providers/skills/security.md) - * [Storage](storage-providers/skills/storage.md) - * [Sales](storage-providers/skills/sales.md) - * [Industry](storage-providers/skills/industry.md) -* [PDP](storage-providers/pdp/README.md) - * [Prerequisites](storage-providers/pdp/prerequisites.md) - * [Install & Run Lotus](storage-providers/pdp/install-and-run-lotus.md) - * [Install & Run YugabyteDB](storage-providers/pdp/install-and-run-yugabytedb.md) - * [Install & Run Curio](storage-providers/pdp/install-and-run-curio.md) - * [Enable PDP](storage-providers/pdp/enable-pdp.md) - * [Use PDP](storage-providers/pdp/use-pdp.md) +- [Basics](storage-providers/basics/README.md) + - [Quickstart guide](storage-providers/basics/quickstart-guide.md) +- [Filecoin economics](storage-providers/filecoin-economics/README.md) + - [Storage proving](storage-providers/filecoin-economics/storage-proving.md) + - [FIL collateral](storage-providers/filecoin-economics/fil-collateral.md) + - [Block rewards](storage-providers/filecoin-economics/block-rewards.md) + - [Slashing](storage-providers/filecoin-economics/slashing.md) + - [Committed capacity](storage-providers/filecoin-economics/committed-capacity.md) +- [Filecoin deals](storage-providers/filecoin-deals/README.md) + - [Storage deals](storage-providers/filecoin-deals/storage-deals.md) + - [Verified deals](storage-providers/filecoin-deals/verified-deals.md) + - [Filecoin programs and tools](storage-providers/filecoin-deals/filecoin-programs.md) + - [Snap deals](storage-providers/filecoin-deals/snap-deals.md) + - [Charging for data](storage-providers/filecoin-deals/charging-for-data.md) + - [Auxiliary services](storage-providers/filecoin-deals/auxiliary-services.md) + - [Return-on-investment](storage-providers/filecoin-deals/return-on-investment.md) +- [Architecture](storage-providers/architecture/README.md) + - [Software components](storage-providers/architecture/lotus-components.md) + - [Storage provider automation](storage-providers/architecture/lotus-automation.md) + - [Sealing pipeline](storage-providers/architecture/sealing-pipeline.md) + - [Sealing rate](storage-providers/architecture/sealing-rate.md) + - [Sealing-as-a-service](storage-providers/architecture/sealing-as-a-service.md) + - [Network indexer](storage-providers/architecture/network-indexer.md) +- [Infrastructure](storage-providers/infrastructure/README.md) + - [Storage](storage-providers/infrastructure/storage.md) + - [Network](storage-providers/infrastructure/network.md) + - [Backup and disaster recovery](storage-providers/infrastructure/backup-and-disaster-recovery.md) + - [Reference architectures](storage-providers/infrastructure/reference-architectures.md) +- [Skills](storage-providers/skills/README.md) + - [Linux](storage-providers/skills/linux.md) + - [Network](storage-providers/skills/network.md) + - [Security](storage-providers/skills/security.md) + - [Storage](storage-providers/skills/storage.md) + - [Sales](storage-providers/skills/sales.md) + - [Industry](storage-providers/skills/industry.md) +- [PDP](storage-providers/pdp/README.md) + - [Prerequisites](storage-providers/pdp/prerequisites.md) + - [Install & Run Lotus](storage-providers/pdp/install-and-run-lotus.md) + - [Install & Run YugabyteDB](storage-providers/pdp/install-and-run-yugabytedb.md) + - [Install & Run Curio](storage-providers/pdp/install-and-run-curio.md) + - [Enable PDP](storage-providers/pdp/enable-pdp.md) + - [Use PDP](storage-providers/pdp/use-pdp.md) ## Nodes -* [Implementations](nodes/implementations/README.md) - * [Lotus](nodes/implementations/lotus.md) - * [Venus](nodes/implementations/venus.md) -* [Full-nodes](nodes/full-nodes/README.md) - * [Pre-requisites](nodes/full-nodes/pre-requisites.md) - * [Basic setup](nodes/full-nodes/basic-setup.md) - * [Node providers](nodes/full-nodes/node-providers.md) -* [Lite-nodes](nodes/lite-nodes/README.md) - * [Spin up a lite-node](nodes/lite-nodes/spin-up-a-lite-node.md) +- [Implementations](nodes/implementations/README.md) + - [Lotus](nodes/implementations/lotus.md) + - [Venus](nodes/implementations/venus.md) +- [Full-nodes](nodes/full-nodes/README.md) + - [Pre-requisites](nodes/full-nodes/pre-requisites.md) + - [Basic setup](nodes/full-nodes/basic-setup.md) + - [Node providers](nodes/full-nodes/node-providers.md) +- [Lite-nodes](nodes/lite-nodes/README.md) + - [Spin up a lite-node](nodes/lite-nodes/spin-up-a-lite-node.md) ## Smart contracts -* [Fundamentals](smart-contracts/fundamentals/README.md) - * [The Filecoin Virtual Machine](smart-contracts/fundamentals/the-fvm.md) - * [Filecoin EVM runtime](smart-contracts/fundamentals/filecoin-evm-runtime.md) - * [ERC-20 quickstart](smart-contracts/fundamentals/erc-20-quickstart.md) - * [Roadmap](smart-contracts/fundamentals/roadmap.md) - * [Support](smart-contracts/fundamentals/support.md) - * [FAQs](smart-contracts/fundamentals/faqs.md) -* [Filecoin EVM-runtime](smart-contracts/filecoin-evm-runtime/README.md) - * [Actor types](smart-contracts/filecoin-evm-runtime/actor-types.md) - * [Address types](smart-contracts/filecoin-evm-runtime/address-types.md) - * [FILForwarder](smart-contracts/filecoin-evm-runtime/filforwarder.md) - * [Difference with Ethereum](smart-contracts/filecoin-evm-runtime/difference-with-ethereum.md) - * [How gas works](smart-contracts/filecoin-evm-runtime/how-gas-works.md) - * [Precompiles](smart-contracts/filecoin-evm-runtime/precompiles.md) -* [Programmatic storage](smart-contracts/programmatic-storage/README.md) - * [Aggregated deal-making](smart-contracts/programmatic-storage/aggregated-deal-making.md) - * [Direct deal-making](smart-contracts/programmatic-storage/direct-deal-making.md) - * [Cross-Chain Data Bridge(CCDB)](smart-contracts/programmatic-storage/ccdb.md) - * [Data replication, renewal and repair (RaaS)](smart-contracts/programmatic-storage/raas.md) - * [RaaS interfaces](smart-contracts/programmatic-storage/raas-interfaces.md) -* [Developing contracts](smart-contracts/developing-contracts/README.md) - * [Get test tokens](smart-contracts/developing-contracts/get-test-tokens.md) - * [Remix](smart-contracts/developing-contracts/remix.md) - * [Hardhat](smart-contracts/developing-contracts/hardhat.md) - * [Foundry](smart-contracts/developing-contracts/foundry.md) - * [Solidity libraries](smart-contracts/developing-contracts/solidity-libraries.md) - * [Call built-in actors](smart-contracts/developing-contracts/call-built-in-actors.md) - * [Filecoin.sol](smart-contracts/developing-contracts/filecoin.sol.md) - * [Direct deal-making with Client contract](smart-contracts/developing-contracts/client-contract-tutorial.md) - * [Using RaaS](smart-contracts/developing-contracts/using-raas.md) - * [Verify a contract](smart-contracts/developing-contracts/verify-a-contract.md) - * [Best practices](smart-contracts/developing-contracts/best-practices.md) -* [Advanced](smart-contracts/advanced/README.md) - * [Wrapped FIL](smart-contracts/advanced/wrapped-fil.md) - * [Oracles](smart-contracts/advanced/oracles.md) - * [Multicall](smart-contracts/advanced/multicall.md) - * [Multisig](smart-contracts/advanced/multisig.md) - * [FEVM Indexers](smart-contracts/advanced/fevm-indexers.md) - * [Cross-chain bridges](smart-contracts/advanced/cross-chain-bridges.md) - * [Aggregated deal-making](smart-contracts/advanced/aggregated-deal-making.md) - * [Contract automation](smart-contracts/advanced/contract-automation.md) - * [Relay](smart-contracts/advanced/relay.md) +- [Fundamentals](smart-contracts/fundamentals/README.md) + - [The Filecoin Virtual Machine](smart-contracts/fundamentals/the-fvm.md) + - [Filecoin EVM runtime](smart-contracts/fundamentals/filecoin-evm-runtime.md) + - [ERC-20 quickstart](smart-contracts/fundamentals/erc-20-quickstart.md) + - [Roadmap](smart-contracts/fundamentals/roadmap.md) + - [Support](smart-contracts/fundamentals/support.md) + - [FAQs](smart-contracts/fundamentals/faqs.md) +- [Filecoin EVM-runtime](smart-contracts/filecoin-evm-runtime/README.md) + - [Actor types](smart-contracts/filecoin-evm-runtime/actor-types.md) + - [Address types](smart-contracts/filecoin-evm-runtime/address-types.md) + - [FILForwarder](smart-contracts/filecoin-evm-runtime/filforwarder.md) + - [Difference with Ethereum](smart-contracts/filecoin-evm-runtime/difference-with-ethereum.md) + - [How gas works](smart-contracts/filecoin-evm-runtime/how-gas-works.md) + - [Precompiles](smart-contracts/filecoin-evm-runtime/precompiles.md) +- [Programmatic storage](smart-contracts/programmatic-storage/README.md) + - [Aggregated deal-making](smart-contracts/programmatic-storage/aggregated-deal-making.md) + - [Direct deal-making](smart-contracts/programmatic-storage/direct-deal-making.md) + - [Cross-Chain Data Bridge(CCDB)](smart-contracts/programmatic-storage/ccdb.md) + - [Data replication, renewal and repair (RaaS)](smart-contracts/programmatic-storage/raas.md) + - [RaaS interfaces](smart-contracts/programmatic-storage/raas-interfaces.md) +- [Developing contracts](smart-contracts/developing-contracts/README.md) + - [Get test tokens](smart-contracts/developing-contracts/get-test-tokens.md) + - [Remix](smart-contracts/developing-contracts/remix.md) + - [Hardhat](smart-contracts/developing-contracts/hardhat.md) + - [Foundry](smart-contracts/developing-contracts/foundry.md) + - [Solidity libraries](smart-contracts/developing-contracts/solidity-libraries.md) + - [Call built-in actors](smart-contracts/developing-contracts/call-built-in-actors.md) + - [Filecoin.sol](smart-contracts/developing-contracts/filecoin.sol.md) + - [Direct deal-making with Client contract](smart-contracts/developing-contracts/client-contract-tutorial.md) + - [Using RaaS](smart-contracts/developing-contracts/using-raas.md) + - [Verify a contract](smart-contracts/developing-contracts/verify-a-contract/index.md) + - [Programmatic](smart-contracts/developing-contracts/verify-a-contract/programmatic/index.md) + - [Hardhat](smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md) + - [Foundry](smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md) + - [Web Interface](smart-contracts/developing-contracts/verify-a-contract/web-interface/index.md) + - [Blockscout](smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md) + - [Filfox](smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md) + - [Best practices](smart-contracts/developing-contracts/best-practices.md) +- [Advanced](smart-contracts/advanced/README.md) + - [Wrapped FIL](smart-contracts/advanced/wrapped-fil.md) + - [Oracles](smart-contracts/advanced/oracles.md) + - [Multicall](smart-contracts/advanced/multicall.md) + - [Multisig](smart-contracts/advanced/multisig.md) + - [FEVM Indexers](smart-contracts/advanced/fevm-indexers.md) + - [Cross-chain bridges](smart-contracts/advanced/cross-chain-bridges.md) + - [Aggregated deal-making](smart-contracts/advanced/aggregated-deal-making.md) + - [Contract automation](smart-contracts/advanced/contract-automation.md) + - [Relay](smart-contracts/advanced/relay.md) ## Networks -* [Mainnet](networks/mainnet/README.md) - * [Explorers](networks/mainnet/explorers.md) - * [RPCs](networks/mainnet/rpcs.md) - * [Network performance](networks/mainnet/network-performance.md) -* [Calibration](networks/calibration/README.md) - * [Explorers](networks/calibration/explorers.md) - * [RPCs](networks/calibration/rpcs.md) -* [Local testnet](networks/local-testnet/README.md) - * [Get test tokens](networks/local-testnet/get-test-tokens.md) -* [Deprecated networks](networks/deprecated-networks/README.md) +- [Mainnet](networks/mainnet/README.md) + - [Explorers](networks/mainnet/explorers.md) + - [RPCs](networks/mainnet/rpcs.md) + - [Network performance](networks/mainnet/network-performance.md) +- [Calibration](networks/calibration/README.md) + - [Explorers](networks/calibration/explorers.md) + - [RPCs](networks/calibration/rpcs.md) +- [Local testnet](networks/local-testnet/README.md) + - [Get test tokens](networks/local-testnet/get-test-tokens.md) +- [Deprecated networks](networks/deprecated-networks/README.md) ## Reference -* [General](reference/general/README.md) - * [Glossary](reference/general/glossary.md) - * [Specifications](reference/general/specifications.md) - * [Tools](reference/general/tools.md) -* [Exchanges](reference/exchanges/README.md) - * [Exchange integration](reference/exchanges/exchange-integration.md) -* [Built-in actors](reference/built-in-actors/README.md) - * [Protocol API](reference/built-in-actors/protocol-api.md) - * [Filecoin.sol](reference/built-in-actors/filecoin.sol.md) -* [JSON-RPC](reference/json-rpc/README.md) - * [Auth](reference/json-rpc/auth.md) - * [Chain](reference/json-rpc/chain.md) - * [Client](reference/json-rpc/client.md) - * [Create](reference/json-rpc/create.md) - * [Eth](reference/json-rpc/eth.md) - * [Gas](reference/json-rpc/gas.md) - * [I](reference/json-rpc/i.md) - * [Log](reference/json-rpc/log.md) - * [Market](reference/json-rpc/market.md) - * [Miner](reference/json-rpc/miner.md) - * [Mpool](reference/json-rpc/mpool.md) - * [Msig](reference/json-rpc/msig.md) - * [Net](reference/json-rpc/net.md) - * [Node](reference/json-rpc/node.md) - * [Paych](reference/json-rpc/paych.md) - * [Raft](reference/json-rpc/raft.md) - * [Start](reference/json-rpc/start.md) - * [State](reference/json-rpc/state.md) - * [Sync](reference/json-rpc/sync.md) - * [Wallet](reference/json-rpc/wallet.md) - * [Web3](reference/json-rpc/web3.md) +- [General](reference/general/README.md) + - [Glossary](reference/general/glossary.md) + - [Specifications](reference/general/specifications.md) + - [Tools](reference/general/tools.md) +- [Exchanges](reference/exchanges/README.md) + - [Exchange integration](reference/exchanges/exchange-integration.md) +- [Built-in actors](reference/built-in-actors/README.md) + - [Protocol API](reference/built-in-actors/protocol-api.md) + - [Filecoin.sol](reference/built-in-actors/filecoin.sol.md) +- [JSON-RPC](reference/json-rpc/README.md) + - [Auth](reference/json-rpc/auth.md) + - [Chain](reference/json-rpc/chain.md) + - [Client](reference/json-rpc/client.md) + - [Create](reference/json-rpc/create.md) + - [Eth](reference/json-rpc/eth.md) + - [Gas](reference/json-rpc/gas.md) + - [I](reference/json-rpc/i.md) + - [Log](reference/json-rpc/log.md) + - [Market](reference/json-rpc/market.md) + - [Miner](reference/json-rpc/miner.md) + - [Mpool](reference/json-rpc/mpool.md) + - [Msig](reference/json-rpc/msig.md) + - [Net](reference/json-rpc/net.md) + - [Node](reference/json-rpc/node.md) + - [Paych](reference/json-rpc/paych.md) + - [Raft](reference/json-rpc/raft.md) + - [Start](reference/json-rpc/start.md) + - [State](reference/json-rpc/state.md) + - [Sync](reference/json-rpc/sync.md) + - [Wallet](reference/json-rpc/wallet.md) + - [Web3](reference/json-rpc/web3.md) ## Builder Cookbook -* [Overview](builder-cookbook/overview.md) -* [Table of Contents](builder-cookbook/table-of-contents.md) -* [Data Storage](builder-cookbook/data-storage/README.md) - * [Store Data](builder-cookbook/data-storage/store-data.md) - * [Retrieve Data](builder-cookbook/data-storage/retrieve-data.md) - * [Privacy & Access Control](builder-cookbook/data-storage/privacy-and-access-control.md) -* [dApps](builder-cookbook/dapps/README.md) - * [Chain-Data Query](builder-cookbook/dapps/chain-data-query.md) - * [Oracles](builder-cookbook/dapps/oracles.md) - * [Cross-Chain Bridges](builder-cookbook/dapps/cross-chain-bridges.md) - * [Decentralized Database](builder-cookbook/dapps/decentralized-database.md) +- [Overview](builder-cookbook/overview.md) +- [Table of Contents](builder-cookbook/table-of-contents.md) +- [Data Storage](builder-cookbook/data-storage/README.md) + - [Store Data](builder-cookbook/data-storage/store-data.md) + - [Retrieve Data](builder-cookbook/data-storage/retrieve-data.md) + - [Privacy & Access Control](builder-cookbook/data-storage/privacy-and-access-control.md) +- [dApps](builder-cookbook/dapps/README.md) + - [Chain-Data Query](builder-cookbook/dapps/chain-data-query.md) + - [Oracles](builder-cookbook/dapps/oracles.md) + - [Cross-Chain Bridges](builder-cookbook/dapps/cross-chain-bridges.md) + - [Decentralized Database](builder-cookbook/dapps/decentralized-database.md) diff --git a/smart-contracts/developing-contracts/foundry.md b/smart-contracts/developing-contracts/foundry.md index bafac2609..bfc34530c 100644 --- a/smart-contracts/developing-contracts/foundry.md +++ b/smart-contracts/developing-contracts/foundry.md @@ -13,17 +13,17 @@ The template repository contains submodules and remappings for ds-test assertion You must have the following installed: -* [Git](https://git-scm.com/) -* [Yarn](https://yarnpkg.com/) +- [Git](https://git-scm.com/) +- [Yarn](https://yarnpkg.com/) You should also have an address on the Filecoin Calibration testnet. See the [MetaMask setup page](../../basics/assets/metamask-setup.md) for information on how to get an address. You also need test `tFIL` in your wallet. ## Steps -1. Clone the `xBalbinus/fevm-foundry-kit` repository and move into the `fevm-foundry-kit` directory: +1. Clone the `filecoin-project/fevm-foundry-kit` repository and move into the `fevm-foundry-kit` directory: ``` -git clone https://github.com/xBalbinus/fevm-foundry-kit/tree/main.git +git clone https://github.com/filecoin-project/fevm-foundry-kit/tree/main.git cd fevm-foundry-kit ``` @@ -34,37 +34,29 @@ yarn install ``` 3. Export your private key from MetaMask. See the [MetaMask documentation](https://support.metamask.io/hc/en-us/articles/360015289632-How-to-export-an-account-s-private-key) to find out how to export your private key. -4. In your `.env.example`, create an environment variable called `PRIVATE_KEY` and paste in the private key from MetaMask. Also, do the same for the `HYPERSPACE_RPC_URL`. Then rename the file to `.env`: + +4. Create your env file by running ``` -PRIVATE_KEY=eed8e9d727a647f7302bab440d405ea87d36726e7d9f233ab3ff88036cfbce9c -HYPERSPACE_RPC_URL=https://api.calibration.node.glif.io/rpc/v1 +cp .env.example .env ``` -5. Inside the `src` folder in a contract called `SimpleCoin.sol`. Deploy this contract using Foundry: - -```shell -forge build -forge script script/SimpleCoin.s.sol:MyScript --rpc-url https://api.calibration.node.glif.io/rpc/v1 --broadcast --verify -vvvv +5. In your newly created`.env` replace `PRIVATE_KEY` with the one gathered from MetaMask. Also, do the same for the `CALIBRATIONNET_RPC_URL`.: -# ... -# -# Script ran successfully. -# Gas used: 234642 +```bash +PRIVATE_KEY=eed8e9d727a647f7302bab440d405ea87d36726e7d9f233ab3ff88036cfbce9c +CALIBRATIONNET_RPC_URL=https://api.calibration.node.glif.io/rpc/v1 ``` -6. Alternatively, you can do the same using the `forge create` command: +6. Inside the `src` folder in a contract called `SimpleCoin.sol`. Deploy this contract using Foundry: -``` +```shell forge build - -forge create --rpc-url https://api.calibration.node.glif.io/rpc/v1 --private-key $PRIVATE_KEY src/SimpleCoin.sol:SimpleCoin +forge create --rpc-url https://api.calibration.node.glif.io/rpc/v1 --private-key $PRIVATE_KEY src/SimpleCoin.sol:SimpleCoin --broadcast ``` 7. You can now interact with your contract using the contract address given by Foundry. Done! For more information, see the [Foundry book](https://book.getfoundry.sh/). - - -[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill\_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/foundry) +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/foundry) diff --git a/smart-contracts/developing-contracts/verify-a-contract.md b/smart-contracts/developing-contracts/verify-a-contract.md deleted file mode 100644 index 9758205e3..000000000 --- a/smart-contracts/developing-contracts/verify-a-contract.md +++ /dev/null @@ -1,79 +0,0 @@ ---- -description: >- - This page lists various Filecoin Ethereum Virtual Machine (FEVM) explorers - with verification tools, and provides a tutorial on how to verify a contract - using Filfox. ---- - -# Verify a contract - -## Verification tools - -The following FEVM-compatible chain explorers offer contract verification tools. For more information, click the appropriate link below. - -* [Filfox](https://filfox.info/en/contract) -* [Starboard](https://fvm.starboard.ventures/explorer/verifier) -* [Beryx](https://beryx.zondax.ch/contract\_verifier) - -## Verification tutorial with Filfox - -The following guide walks you through the process of contract verification using the [Filfox](https://filfox.info/en/contract) explorer. - -### Prerequisites - -* A smart contract (`.sol` file) -* [Remix](https://remix.ethereum.org/) - -### Procedure - -1. Open Remix: - -![](../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg) - -2. In the **File Explorer** sidebar tab, under **contracts**, right click on the contract you want to verify. -3. From the menu, select **generate UML** to flatten the `.sol` file and ensure that all components and tasks are included. - - A new contract with the name `_flattened.sol` is generated below your original contract. -4. Ensure that the license and Solidity version in the flattened contract is the same as in your original contract. -5. Click **Save**. -6. Right click on `_flattened.sol`. -7. In the menu, click **Download** to save the file. -8. Note the following information, as you will need it later: - * The address of your deployed contract - * The contract license type (if any) - * The Solidity compiler version -9. Navigate to [Filfox](https://filfox.info/en/contract). -10. In the form, enter the information noted previously for the deployed contract you would like to verify: - * The address - * The license type - * The compiler version - -![](../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-filfox.jpg) - -11. Click **Continue**. -12. Click \*_Select .sol files_. -13. Select your flattened `.sol` file. -14. Click **Verify and Publish**. - -!\[]\(../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-verify-and -publish.jpg) - -``` -Success! Your contract is now verified. -``` - -![](../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success.jpg) - -15. To view your verified contract: - 1. Enter the address of the contract in the [Filfox search bar](https://filfox.info/). - -![](../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-contract-tab.jpg) - -``` -2. Scroll down the contract page and select the **Contract** tab. - - A **Contract Source Code Verified** banner is displayed, along with contract information and source code. You can also [view other verified contracts on Filfox](https://filfox.info/en/stats/verified-contracts). -``` - -![](../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-verified-contract-list.jpg) - -[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill\_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract) diff --git a/smart-contracts/developing-contracts/verify-a-contract/index.md b/smart-contracts/developing-contracts/verify-a-contract/index.md new file mode 100644 index 000000000..0f8a9f6a0 --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/index.md @@ -0,0 +1,39 @@ +--- +description: >- + This section provides comprehensive guides for verifying smart contracts + on the Filecoin network using various tools and methods. +--- + +# Contract Verification + +Contract verification is essential for transparency and trust in the Filecoin ecosystem. It allows users to inspect the source code of deployed contracts and ensures they function as intended. + +## Available Verification Tools + +The following FEVM-compatible chain explorers offer contract verification capabilities: + +- [Blockscout](https://filecoin.blockscout.com/contract-verification) - Multi-chain explorer with advanced verification options +- [Filfox](https://filfox.info/en/contract) - Native Filecoin explorer with comprehensive verification features +- [Starboard](https://fvm.starboard.ventures/explorer/verifier) - FVM-focused verification platform +- [Beryx](https://beryx.zondax.ch/contract_verifier) - Developer-friendly verification interface +- [Sourcify](https://docs.sourcify.dev/docs/how-to-verify/) - Multi-chain contract repository with verification tools + +## Verification Methods + +There are two primary approaches to verify your smart contracts: + +### Programmatic Verification + +Automate contract verification directly from your development environment: + +- [Hardhat verification guide](/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md) +- [Foundry verification guide](/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md) + +### Web Interface Verification + +Verify contracts through explorer user interfaces: + +- [Blockscout web interface guide](/smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md) +- [Filfox web interface guide](/smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md) + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract) diff --git a/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md b/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md new file mode 100644 index 000000000..fc514a988 --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md @@ -0,0 +1,104 @@ +--- +description: >- + Learn how to verify smart contracts on the Filecoin network using Foundry + with various verification services including Blockscout, Sourcify, and Filfox. +--- + +# Contract Verification with Foundry + +This guide shows you how to verify your smart contracts using Foundry on the Filecoin network. + +## Prerequisites + +- A Foundry project set up for Filecoin development +- If you don't have a Foundry project, check out the [FEVM Foundry Kit](/smart-contracts/developing-contracts/foundry.md) +- A deployed contract address +- Contract constructor arguments (if any) + +## Verification Methods + +### Blockscout Verification + +Blockscout is a popular blockchain explorer that supports contract verification. + +**Verify on Calibration Testnet:** + +```bash +forge verify-contract \ + --verifier blockscout \ + --verifier-url 'https://filecoin-testnet.blockscout.com/api/' \ + --force \ + --skip-is-verified-check \ + 0xYourContractAddress \ + src/MyContract.sol:MyContract +``` + +**Verify on Filecoin Mainnet:** + +```bash +forge verify-contract \ + --verifier blockscout \ + --verifier-url 'https://filecoin.blockscout.com/api/' \ + --force \ + --skip-is-verified-check \ + 0xYourContractAddress \ + src/MyContract.sol:MyContract +``` + +### Sourcify Verification + +Sourceify provides decentralized contract verification. + +**Verify on Filecoin Mainnet:** + +```bash +forge verify-contract 0xYourContractAddress \ + src/MyToken.sol:MyToken \ + --chain-id 314 \ + --verifier sourcify \ + --verifier-url https://sourcify.dev/server/ \ + --guess-constructor-args +``` + +**Verify on Calibration Testnet:** + +```bash +forge verify-contract 0xYourContractAddress \ + src/MyToken.sol:MyToken \ + --chain-id 314159 \ + --verifier sourcify \ + --verifier-url https://sourcify.dev/server/ \ + --guess-constructor-args +``` + +For more information, see the [Sourcify documentation](https://docs.sourcify.dev/docs/how-to-verify/). + +### Filfox Verification + +Filfox is the native Filecoin explorer with dedicated verification support. + +**Installation:** + +```bash +npm install -g @fil-b/filfox-verifier +``` + +**Usage:** + +```bash +filfox-verifier forge
--chain +``` + +**Examples:** + +```bash +# Verify on Filecoin Mainnet +filfox-verifier forge 0xYourContractAddress src/MyContract.sol:MyContract --chain 314 + +# Verify on Calibration Testnet +filfox-verifier forge 0xYourContractAddress src/MyContract.sol:MyContract --chain 314159 +``` + +For detailed information, see the [@fil-b/filfox-verifier documentation](https://www.npmjs.com/package/@fil-b/filfox-verifier). + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry) diff --git a/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md b/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md new file mode 100644 index 000000000..d615205d6 --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md @@ -0,0 +1,140 @@ +--- +description: >- + Learn how to verify smart contracts on the Filecoin network using Hardhat + with various verification services including Blockscout, Sourcify, and Filfox. +--- + +# Contract Verification with Hardhat + +This guide shows you how to verify your smart contracts using Hardhat on the Filecoin network. + +## Prerequisites + +- A Hardhat project set up for Filecoin development +- If you don't have a Hardhat project, check out the [FEVM Hardhat Kit](/smart-contracts/developing-contracts/hardhat.md) +- A deployed contract address +- Contract constructor arguments (if any) + +## Verification Methods + +### Blockscout Verification + +Blockscout is a popular blockchain explorer that supports contract verification. Add the following configuration to your `hardhat.config.ts`: + +```typescript +const config: HardhatUserConfig = { + solidity: { + ... + }, + networks: { + filecoin: { + ... + }, + calibration: { + ... + }, + }, + // Configuration for hardhat-verify plugin with Blockscout API + etherscan: { + apiKey: { + filecoin: "empty", + calibration: "empty", + }, + customChains: [ + { + network: "filecoin", + chainId: 314, + urls: { + apiURL: "https://filecoin.blockscout.com/api", + browserURL: "https://filecoin.blockscout.com", + }, + }, + { + network: "calibration", + chainId: 314159, + urls: { + apiURL: "https://filecoin-testnet.blockscout.com/api", + browserURL: "https://filecoin-testnet.blockscout.com", + }, + }, + ], + } +}; + +export default config; +``` + +**Verify on Filecoin Mainnet:** +```bash +npx hardhat verify $CONTRACT_ADDRESS_TO_VERIFY $CONTRACT_CONSTRUCTOR_ARGS --network filecoin +``` + +**Verify on Calibration Testnet:** +```bash +npx hardhat verify $CONTRACT_ADDRESS_TO_VERIFY $CONTRACT_CONSTRUCTOR_ARGS --network calibration +``` + +**Troubleshooting:** +If your contract appears already verified but shows a mismatch, use the `--force` flag: +```bash +npx hardhat verify $CONTRACT_ADDRESS_TO_VERIFY $CONTRACT_CONSTRUCTOR_ARGS --network filecoin --force +``` + +### Sourcify Verification + +Sourcify provides decentralized contract verification. Include the Blockscout configuration above and add the following Sourcify configuration: + +```typescript +const config: HardhatUserConfig = { + ... + // Configuration for hardhat-verify plugin to also verify on Sourcify + sourcify: { + enabled: true, // verifies both on Sourcify and on Blockscout + // Optional: specify a different Sourcify server + apiUrl: "https://sourcify.dev/server", + // Optional: specify a different Sourcify repository + browserUrl: "https://repo.sourcify.dev", + }, +}; + +export default config; +``` + +This configuration enables dual verification on both Sourcify and Blockscout when running the `npx hardhat verify` task. + +For more information, see the [Sourcify documentation](https://docs.sourcify.dev/docs/how-to-verify/). + +### Filfox Verification + +Filfox is the native Filecoin explorer with dedicated verification support. + +**Installation:** + +Install the `@fil-b/filfox-verifier` package into your Hardhat project. +```bash +npm install -g @fil-b/filfox-verifier +``` + +**Configuration:** +Import the plugin in your Hardhat configuration file. This will add the `verifyfilfox` task into your Hardhat project! + +```javascript +// hardhat.config.js +require("@fil-b/filfox-verifier/hardhat"); + +// or in hardhat.config.ts +import "@fil-b/filfox-verifier/hardhat"; +``` + +**Usage:** +```bash +# Verify on Filecoin Mainnet +npx hardhat verifyfilfox --address 0xYourContractAddress --network filecoin + +# Verify on Calibration Testnet +npx hardhat verifyfilfox --address 0xYourContractAddress --network calibration +``` + +For detailed information, see the [@fil-b/filfox-verifier documentation](https://www.npmjs.com/package/@fil-b/filfox-verifier). + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat) diff --git a/smart-contracts/developing-contracts/verify-a-contract/programmatic/index.md b/smart-contracts/developing-contracts/verify-a-contract/programmatic/index.md new file mode 100644 index 000000000..ebe4670d0 --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/programmatic/index.md @@ -0,0 +1,18 @@ +--- +description: >- + Learn how to programmatically verify smart contracts on the Filecoin network + using popular development frameworks like Hardhat and Foundry. +--- + +# Programmatic Contract Verification + +Programmatic verification allows you to automate the contract verification process directly from your development environment. This approach is ideal for CI/CD pipelines and streamlined deployment workflows. + +## Available Frameworks + +Choose your preferred development framework: + +- **[Hardhat](/smart-contracts/developing-contracts/verify-a-contract/programmatic/hardhat.md)** - Popular Ethereum development environment with extensive plugin ecosystem +- **[Foundry](/smart-contracts/developing-contracts/verify-a-contract/programmatic/foundry.md)** - Fast, portable, and modular toolkit for Ethereum application development + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract/programmatic) diff --git a/smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md b/smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md new file mode 100644 index 000000000..9eabc4a0e --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md @@ -0,0 +1,68 @@ +--- +description: >- + Step-by-step guide for verifying smart contracts on the Filecoin network + using the Blockscout explorer's web interface. +--- + +# Contract Verification with Blockscout + +The following guide walks you through the process of contract verification using the [Blockscout](https://filecoin.blockscout.com/) explorer. + +## Prerequisites + +- A deployed smart contract on Filecoin +- Your contract's source code (`.sol` file) +- [Remix IDE](https://remix.ethereum.org/) for flattening contracts +- Contract deployment details (address, compiler version, license, optimization settings) + +## Step-by-Step Verification Process + +### Step 1: Prepare Your Contract Source Code + +1. **Open Remix IDE:** + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg) + +2. **Flatten your contract:** + - In the **File Explorer** sidebar, under **contracts**, right-click on your contract + - Select **Flatten** from the menu + - This creates a `_flattened.sol` file with all dependencies included + +3. **Verify contract details:** + - Ensure the license and Solidity version match your original contract + - Click **Save** to save the flattened contract + +4. **Download the flattened contract:** + - Right-click on `_flattened.sol` + - Select **Download** to save the file locally + +5. **Gather required information:** + - Contract deployment address + - Contract license type (optional) + - Solidity compiler version used for deployment + - Optimization settings (enabled/disabled and runs count) + +### Step 2: Submit for Verification +6. **Access Blockscout verification page:** + - Navigate to the [Blockscout Contract Verification](https://filecoin.blockscout.com/contract-verification) page + +7. **Fill in contract information:** + - Enter your contract's deployment address + - Select the appropriate license type (optional) + - Choose verification method: `Solidity (Single file)` + - Enter the compiler version used for deployment + - Paste the source code from your `_flattened.sol` file + - Configure the `Optimization enabled` checkbox to match your deployment settings + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-blockscout.jpg) + +8. **Submit for verification:** + - Click **Verify & Publish** to submit your contract + +### Step 3: Verification Complete + +Upon successful verification, Blockscout will display a success message and redirect you to your verified contract dashboard where you can view the source code and interact with your contract. + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success-blockscout.jpg) + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract) diff --git a/smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md b/smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md new file mode 100644 index 000000000..1c1716a73 --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md @@ -0,0 +1,86 @@ +--- +description: >- + Step-by-step guide for verifying smart contracts on the Filecoin network + using the Filfox explorer's web interface. +--- + +# Contract Verification with Filfox + +The following guide walks you through the process of contract verification using the [Filfox](https://filfox.info/en/contract) explorer. + +## Prerequisites + +- A deployed smart contract on Filecoin +- Your contract's source code (`.sol` file) +- [Remix IDE](https://remix.ethereum.org/) for flattening contracts +- Contract deployment details (address, compiler version, license) + +## Step-by-Step Verification Process + +### Step 1: Prepare Your Contract Source Code + +1. **Open Remix IDE:** + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-remix.jpg) + +2. **Flatten your contract:** + - In the **File Explorer** sidebar, under **contracts**, right-click on your contract + - Select **Flatten** from the menu + - This creates a `_flattened.sol` file with all dependencies included + +3. **Verify contract details:** + - Ensure the license and Solidity version match your original contract + - Click **Save** to save the flattened contract + +4. **Download the flattened contract:** + - Right-click on `_flattened.sol` + - Select **Download** to save the file locally + +5. **Gather required information:** + - Contract deployment address + - Contract license type (if any) + - Solidity compiler version used for deployment + +### Step 2: Submit for Verification + +6. **Access Filfox verification page:** + - Navigate to the [Filfox Contract Verification](https://filfox.info/en/contract) page +7. **Fill in contract information:** + - Enter your contract's deployment address + - Select the appropriate license type + - Choose the compiler version used for deployment + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-filfox.jpg) + +8. **Upload source code:** + - Click **Continue** to proceed + - Click **Select .sol files** + - Choose your flattened `.sol` file + - Click **Verify and Publish** to submit + +### Step 3: Verification Complete + +Once submitted, Filfox will process your verification request. Upon successful verification, you'll see a success message confirming your contract is now verified. + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-success.jpg) + +## Viewing Your Verified Contract + +1. **Navigate to your contract:** + - Enter your contract address in the [Filfox search bar](https://filfox.info/) + - This will take you to your contract's page + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-contract-tab.jpg) + +2. **View verification status:** + - Scroll down and select the **Contract** tab + - Look for the **Contract Source Code Verified** banner + - Your contract's source code and ABI will now be publicly visible + +3. **Explore verified contracts:** + - Browse [other verified contracts on Filfox](https://filfox.info/en/stats/verified-contracts) + - Learn from verified contract examples in the ecosystem + +![](../../../../.gitbook/assets/smart-contracts-developing-contracts-verify-a-contract-verified-contract-list.jpg) + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract) diff --git a/smart-contracts/developing-contracts/verify-a-contract/web-interface/index.md b/smart-contracts/developing-contracts/verify-a-contract/web-interface/index.md new file mode 100644 index 000000000..19e009c4b --- /dev/null +++ b/smart-contracts/developing-contracts/verify-a-contract/web-interface/index.md @@ -0,0 +1,18 @@ +--- +description: >- + Learn how to verify smart contracts on the Filecoin network using web-based + explorer interfaces like Filfox and Blockscout for a user-friendly experience. +--- + +# Web Interface Contract Verification + +Web interface verification allows you to verify contracts directly through blockchain explorer websites using a user-friendly graphical interface. This method is ideal for users who prefer a visual approach or need to verify contracts occasionally. + +## Available Explorers + +Choose your preferred blockchain explorer: + +- **[Blockscout](/smart-contracts/developing-contracts/verify-a-contract/web-interface/blockscout.md)** - Multi-chain explorer with advanced verification options +- **[Filfox](/smart-contracts/developing-contracts/verify-a-contract/web-interface/filfox.md)** - Native Filecoin explorer with comprehensive verification features + +[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract/web-interface)