Bitcoin is free software and any developer can contribute to the project. Please make sure to read and follow the development process described in the README, as well as bitcoin software development provide good quality code and respect all guidelines. Less formal development discussion happens on irc.

To report an issue, please see the bug reporting page. Code Review Bitcoin Core is security software that helps protect assets worth billions of dollars, so every code change needs to be reviewed by experienced developers. It can take a long time for other developers to review your pull requests. Remember that all reviewers are taking time away from their own projects to review your pull requests, so be patient and respectful of their time.

Please also consider helping to review other people’s pull requests. There are almost always open pull requests that any programmer can review. Starter Projects Do you want to begin coding for Bitcoin Core but don’t have a specific improvement in mind? Fix existing issues: the issue tracker is the best place to find a useful way to contribute to Bitcoin Core. Before starting to write any patches for issues you find, you may want to comment on the issue to make sure nobody else is already working on it.

Write tests: Bitcoin Core is covered by many tests, but patches that improve test coverage are always welcome and are a great way to build familiarity with the codebase. See the documentation about automated testing. Documentation If you are interested in learning more about the technical details of Bitcoin and how to use existing tools and APIs, it is recommended you start by exploring the developer documentation. Developer communities The following chatrooms and websites host discussions about Bitcoin development.

Please be sure to read their rules of conduct before posting. BFGMiner – A modular miner, written in C. Bitcoin Wallet – A SPV wallet for Android, written in Java. A library for SPV wallets, written in Java. A full node, written in Go.