I'm not a C++ developer, although I have been trying to learn slowly. Are there any prerequisites or requirements to contribute to the Monero code? Also what resources are good to read before trying to contribute to the code?


2 Answers 2


A good way to get started it to use Monero, and improve something small which you think can be improved. This allows you to start on a change that's simple enough to start with, while having a goal to achieve. Then do it again :)

Monero's git repository is at https://github.com/monero-project/bitmonero/. There, you can find a list of issues (https://github.com/monero-project/bitmonero/issues), some of which are fairly self contained and simple for a new contributor.

To talk with other contributors, join Freenode IRC, in #monero-dev. There is also #monero for monero talk that's not about developing monero. It is a good idea to idle in those channels.

There aren't really prerequisites, but some of the Monero/Cryptonote code is fairly complex. Some is less so (eg, the wallet code).

There are also other things you might want to contribute to, which are helpful to Monero: Kovri (https://github.com/monero-project/kovri/), the I2P router which will allow Monero to connect to the network via I2P, or the pool software (https://github.com/zone117x/node-cryptonote-pool), written in Javascript, or the GUI (https://github.com/mbg033/monero-core), in C++/QML.


I'd recommend getting into testing if you haven't got much coding experience, if you have a spare Trezor, you could try testing NoodleDoodle's Trezor for Monero binaries https://forum.getmonero.org/4/academic-and-technical/2495/experimental-trezor-firmware-testing, or you could try and give the Monero GUI a whirl, instructions for getting it compiled and running with minimal fuss is here, https://www.reddit.com/r/Monero/comments/4yp52w/super_simple_build_instructions_for_the_monero/

This helps developers make more stable releases in the future by fixing any bugs users discover early on. I'd also recommend getting up to speed with git, and github as they are regularly used to manage the codebases. Hope that gives you some ideas.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.