Get started

The Filecoin Network is made with storage providers and clients. They make deals and contribute to maintaining the Filecoin blockchain, obtaining storage services, and receiving rewards in the process. This section walks your through how to get started, build a node, and create a simple application.

Working with blockchains is difficult, and the inherent complexity of blockchains can be overwhelming for new developers. If you’re not sure where to begin, we recommend you take a look at these sections before diving into more complex parts of Filecoin:

Become familiar with the concepts

Store content on Filecoin

Looking for an easy way to store and access your files on Filecoin? Use one of the community built tools and services to get started. Take a look now →

Contribute to Filecoin

  • Mine Filecoin: for those wanting to provide storage and retrieval capabilities to the Network.
  • Build on Filecoin: for those wanting to build applications that interact with the Filecoin network.

Filecoin Software

Name
LotusImplementation of Filecoin node, maintained by Protocol Labs.

For users that want to participate in the Filecoin network validating blocks, manage a wallet and perform deals on the command line.
SlateSlate is a fully open-source file-sharing network designed for research and collaboration, powered by Textile, IPFS and Filecoin.

For users that want to easily store their data in a cloud backed by decentralized technologies.
PowergateA multitiered storage solution that stores data with IPFS (“Hot” storage layer) and Filecoin (“Cold” storage layer).
Fleek space daemonA wrapper around awesome IPFS tools to start coding a decentralized desktop app as fast as possible. It is built on top of Textile Threads, Buckets, and Powergate.
StarlingA command-line interface for simplified, coordinated, decentralized storage on the Filecoin network.

Wallets

Filecoin wallets allow you to manage FIL, Filecoin’s native token. Wallets store the private keys that allow you to authorize Filecoin transactions, including paying for storage deals and sending FIL to other accounts. See the About Wallet Addresses to learn about the kinds of addresses used by Filecoin accounts.

The table below lists the recommended wallet implementations:

Name
Glif WalletGlif Wallet is a lightweight web interface to send and receive Filecoin with a Ledger device (instructions).
Glif SafeGlif Safe is a multisig wallet with a lightweight web interface to send and receive Filecoin with a Ledger device (instructions). Check out the Glif Safe GitHub repo for more information.
LotusLotus includes a command-line wallet that can manage bls, sec1p256k1, multisig wallets, and supports Ledger integration.

Glif Safe and Lotus both support multisig wallets, a multisig wallet is a wallet that requires two or more private keys in order to sign and send transactions. Multisig wallets prevent any one private key holder from signing and sending a transaction, this is beneficial for wallets with multiple users and for people who are concerned about an attack on their wallet.

Lotus, Glif Safe, and Glif Wallet all support Ledger hardware devices, allowing you to use Filecoin without storing your private keys on a network-connected device. This can help protect your valuable private keys from malicious software on your computer and is commonly used for accounts with large balances.

There are a number of additional wallets that support Filecoin tokens, including mobile wallets.

Filecoin implementations

There are 4 Filecoin protocol implementations (or “node software”) currently in progress:

  • lotus (Go): This implementation is closest to feature-complete and is, therefore, the recommended Filecoin protocol implementation.
  • venus (Go): This implementation is currently running tens of nodes on the Filecoin network. Participants are encouraged to experiment with this implementation and provide feedback to the Venus team.
  • forest (Rust)
  • fuhon (C++)

Each of these software clients implements the Filecoin protocol as described in the Filecoin protocol specification. To learn more about why there are multiple Filecoin implementations, please read this blog post.

Here is a snapshot of each implementation’s progress across the primary parts of the Filecoin protocol (updated August 1, 2022):

LotusVenusForestFuhon (deprecated)
Base LanguageGoGoRustC++
1. Node
2. Files & data⛔️
3. Virtual Machine🔄🔄⛔️
4. VM Actors🔄🔄⛔️
5. Blockchain
6. Token
7. Storage Mining⛔️⛔️
8. Market⛔️⛔️

✅ : fully-featured implementation. 🔄 : reuses components from another implementation. 🔶 : partial implementation. ⛔️ : pending implementation.

Since May 2022, Fuhon’s C++ implementation has been deprecated and is currently out of support. The source code is available here. There are no immediate plans to introduce another c++ implementation.