Contribute
So you want to contribute to Lotus? Here is a quick listing of things we need help with and how you can get started. Even if what you want to do is not listed here, we probably accept contributions for it! If you're unsure, please open a issue.
On this page
Code
Lotus, the reference implementation of Filecoin and its sister-projects are big, with lots of code written in multiple languages. We always need help writing and maintaining code, but it can be daunting to just jump in. We use the label Help Wanted on features or bugfixes that people can help out with. They are an excellent place for you to start contributing code.
The biggest and most active repositories we have today are:
- filecoin-project/lotus
- filecoin-project/builtin-actors
- filecoin-project/ref-fvm
- filecoin-project/rust-fil-proofs
If you want to start contributing to the core of Filecoin, those repositories are a great place start.
But the Help Wanted label also exists in several related projects:
Community
The Filecoin community is active and here to answer your questions in your channel of choice.
For shorter-lived discussions, our community chat is open to all on Slack in the #fil-lotus-dev channel.
For long-lived discussions and for support, please use Lotus GitHub discussions instead of Slack. It’s easy for complex discussions to get lost in a sea of new messages on those chat platforms, and posting longer discussions and support requests on the forums helps future visitors, too.
Build Applications
Filecoin is designed for you to integrate into your own applications and services.
Get started by looking at the list of projects currently built on Filecoin. Build anything you think is missing! If you’re unsure about something, you can join the chat and discussion forums to get help or feedback on your specific problem/idea. You can also apply for a Filecoin Developer Grant to support the development of your project.
Protocol Design
Filecoin is ultimately about building better protocols, and we always welcome ideas and feedback on how to improve those protocols.