Skip to content
Merged
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
2 changes: 2 additions & 0 deletions basics/how-storage-works/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,6 @@ description: >-

# How storage works

This section is an introduction to two methods of performing storage deals --through the [Filecoin Plus](https://docs.filecoin.io/basics/how-storage-works/filecoin-plus) program or through [various storage onramps](https://docs.filecoin.io/basics/how-storage-works/storage-onramps). This section also explains the features and advantages of using [Filecoin and IPFS](https://docs.filecoin.io/basics/how-storage-works/filecoin-and-ipfs).

[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill\_Page+URL=https://docs.filecoin.io/basics/how-storage-works)
1 change: 0 additions & 1 deletion networks/mainnet/rpcs.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ In order to check the current benchmarked performance of each of the below endpo
| [Ankr](https://ankr.com/) | `https://rpc.ankr.com/filecoin` | By request at: https://www.ankr.com/rpc/filecoin | [Ankr Docs - Filecoin](https://www.ankr.com/docs/rpc-service/chains/chains-list/#filecoin) | All Filecoin and Eth JSON RPC methods including MPoolPush |
| [Chainup Cloud](https://cloud.chainup.com/) | `https://filecoin.chainup.net/rpc/v1` | `wss://filecoin.chainup.net/rpc/v1` | [Chainup Cloud Docs - Filecoin](https://docs.chainupcloud.com/blockchain-api/filecoin/public-apis) | |
| [NOWNodes](https://nownodes.io/) | `https://fil.nownodes.io` (Free for 1 month with signup) | | [NOWNodes - Docs](https://documenter.getpostman.com/view/13630829/TVmFkLwy) | |
| [GetBlock](https://getblock.io/nodes/fil) | `https://filecoin.getblock.io` (Free with signup) | | [GetBlock - Docs](https://getblock.io/docs/getblock-explorer/get-started/) | |
| [Lava](https://docs.lavanet.xyz/filecoin-dev) | `https://filecoin.lava.build` | | [Lava - Docs](https://docs.lavanet.xyz/filecoin-dev) | JSON RPC |

## Additional Notes:
Expand Down
4 changes: 2 additions & 2 deletions smart-contracts/advanced/fevm-indexers.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ One of the popular subgraphs is a subgraph containing information about all the

* Visit the [Protofire (Glif Nodes) platform](https://api.node.glif.io).
* Navigate to the **SUBGRAPHS** tab.
* Select the [**blocks**](https://api.node.glif.io/graph/21/mainnet%2Fblocks) subgraph.
* In the opened **Playground** tab, click the **Show GraphiQL Explorer** button (folder icon, 3rd from the top in the left bar) to verify the subgraph schema.
* Select the relevant subgraph from [Protofire](https://api.node.glif.io/graph).
* In the opened **Playground** tab, click the **Show GraphQL Explorer** button (folder icon, 3rd from the top in the left bar) to verify the subgraph schema.
* Click the elements that you are looking to query and adjust the query if necessary. For the sake of this example, let's query the first block this subgraph supports (#2867000). The resulting query should look like the following:

```graphql
Expand Down
14 changes: 14 additions & 0 deletions smart-contracts/developing-contracts/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,18 @@ description: >-

# Developing contracts

This section covers how to build dApps by writing smart contracts in the Filecoin Virtual Machine. The docs in this section explain:
- How to [get test tokens](https://docs.filecoin.io/smart-contracts/developing-contracts/get-test-tokens), called tFIL, from a faucet.
- How to set up [Remix](https://docs.filecoin.io/smart-contracts/developing-contracts/remix), to make use of Ethereum tooling while building Filecoin dApps.
- How to set up [Hardhat](https://docs.filecoin.io/smart-contracts/developing-contracts/hardhat), to build FVM dApps in an environment familiar to Ethereum developers.
- How to make use of [Foundry](https://docs.filecoin.io/smart-contracts/developing-contracts/foundry), expanding the utilities available for interacting with FVM contracts.
- Where to [find contract templates](https://docs.filecoin.io/smart-contracts/developing-contracts/solidity-libraries) from a range of third party Solidity libraries.
- How to [Call built-in actors](https://docs.filecoin.io/smart-contracts/developing-contracts/call-built-in-actors) using the Protocol API or the Solidity Library.
- How to make use of the Filecoin [Solidity Libraries](https://docs.filecoin.io/smart-contracts/developing-contracts/filecoin.sol) to build FVM dApps using a language familiar to Ethereum developers.
- How to perform a storage deal using the [direct dealmaking client contract](https://docs.filecoin.io/smart-contracts/developing-contracts/client-contract-tutorial).
- How to [replicate, renew, or repair (RaaS)](https://docs.filecoin.io/smart-contracts/developing-contracts/using-raas) storage deals on Filecoin.
- How to [verify a contract](https://docs.filecoin.io/smart-contracts/developing-contracts/verify-a-contract) using one of Filecoin's many block explorers.
- The [best practices](https://docs.filecoin.io/smart-contracts/developing-contracts/best-practices) for building FVM dApps.


[Was this page helpful?](https://airtable.com/apppq4inOe4gmSSlk/pagoZHC2i1iqgphgl/form?prefill\_Page+URL=https://docs.filecoin.io/smart-contracts/developing-contracts)
4 changes: 1 addition & 3 deletions smart-contracts/developing-contracts/call-built-in-actors.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
---
description: >-
Filecoin built-in actors can be invoked in a smart contract using either the
Protocol API or the Zondax filecoin.solidity library. This page provides
instructions on how to use each method.
Filecoin built-in actors can be invoked in a smart contract using either the Protocol API or the Filecoin.sol library. This page provides instructions on how to use each method.
---

# Call built-in actors
Expand Down
11 changes: 0 additions & 11 deletions smart-contracts/fundamentals/filecoin-evm-runtime.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,6 @@ Code deployed to EVM is typically written in the high-level language Solidity, a

The Filecoin EVM, often just referred to as _FEVM_, is the Ethereum virtual machine virtualized as a runtime on top of the Filecoin virtual machine. It allows developers to port any existing EVM-based smart contracts straight onto the FVM. The Filecoin EVM runtime is completely compatible with any EVM development tools, such as Hardhat, Brownie, and MetaMask, making deploying and interacting with EVM-based actors easy! This is because Filecoin nodes offer the Ethereum JSON-RPC API.

## FEVM and native FVM

Once [Milestone 2.2 of the FVM roadmap](roadmap.md) is complete, developers will have the option to deploy actors on either the FEVM or native FVM, or both if they really want to. But which should you choose? The decision can be summed up as such: if you want better performance, write actors that are compiled to WASM and deployed to native FVM. If you are familiar with Solidity and want access to the EVM ecosystem of tools, but don’t mind less performance, deploy to the FEVM. See the pros and cons of each below:

| | FVM | FEVM |
| -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| **Pros** | <p>Native execution speed and performance on Filecoin (i.e., less gas cost per unit of actor code executed).<br><br>Write actors in any language that compiles to WASM 1.</p> | Take advantage of current Solidity and EVM tooling to quickly port or write actors. |
| **Cons** | Tooling is not yet as mature as EVM tooling. | Higher gas fees and lower performance due to the virtualization overhead of the FEVM. |

In both cases, you have access to all the awesome power of the Filecoin blockchain, including storage contracts as a native primitive!

## Deep dive

For a deeper dive into the concepts discussed on this page, see this presentation Ethereum compatibility of FVM, see:
Expand Down
4 changes: 3 additions & 1 deletion smart-contracts/fundamentals/the-fvm.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ description: >-

# The Filecoin Virtual Machine

NOTE: As of January 2025, for developer support, please visit the [FILB](https://fil.builders/) website. For Filecoin product updates, please visit the [FILOz](https://www.filoz.org/) website or see the Lotus [Github discussion page](https://github.com/filecoin-project/lotus/discussions).

## Introduction

Filecoin’s storage and retrieval capabilities can be thought of as the base layer of the Filecoin blockchain, and [FVM](https://fvm.filecoin.io) can be thought of as a layer on top of Filecoin that unlocks programmability on the network (e.g. programmable storage primitives).
Expand All @@ -31,7 +33,7 @@ FVM Actors enable a huge range of use cases to be built on Filecoin. Here are ju
* Replication: In addition to allowing a client to store one data set with one storage provider in perpetuity, FVM Actors enable data resiliency by allowing a client to store one data set once manually and then have the Actor replicate that data with multiple other storage providers automatically. Additional conditions that can be set in an automated replication Actor include choices about the geographic region of the storage providers, latency, and deal price limits.
* Leasing: FVM Actors enable a FIL token holder to provide collateral to clients looking to do a storage deal, and be repaid the principal and interest over time. FVM Actors can also trace the borrowing and repayment history of a given client, generating a community-developed reputation score.

Additional use cases enabled by FVM include, but are not limited to, tokenized data sets, trustless reputation systems, NFTs, storage bounties and auctions, Layer 2 bridges, futures and derivatives, or conditional leasing. Visit the Protocol Labs [FVM Request for Startups](https://rfs.fvm.dev/) page to see in-depth descriptions of the use cases you may want to build and how Protocol Labs prioritizes them.
Additional use cases enabled by FVM include, but are not limited to, tokenized data sets, trustless reputation systems, NFTs, storage bounties and auctions, Layer 2 bridges, futures and derivatives, or conditional leasing.

### Start building on the FVM

Expand Down