Contributing to Spectrum

Thank you so much for your interest in contributing to Spectrum. Having a healthy community of people who feel empowered to work on the project is vital to its success. To that end, if you have any questions about contributing to the project, please get in touch with the community, and we'll gladly help you out!

Contributing code

If you're interested in contributing code to Spectrum, you can find the source repositories online. If you've made changes you'd like to be included in the official Spectrum distribution, please send patches to the spectrum-devel mailing list (


Sending patches to the list is easy — you can do it with Git, straight from the command line. You don't have to set anything up in your email client, and you don't have to subscribe to the list. The only thing you need to do is probably to set up Git so it knows how to send email using your provider's SMTP server. These instructions should be enough to get you going, but if you're still stuck, send an email to and we'll help you out.

Once you have Git configured correctly, sending your changes to the list should be as simple as something like

git send-email origin/master --to

You'll be CCed on replies to your posts, so you don't even have to be subscribed to the mailing list if you're worried about too much traffic. There's also a web interface that you can use to browse or even post to the mailing list.

Please add a Signed-off-by line to each patch you submit, to indicate your certification of the Developer's Certificate of Origin for that patch. The easiest way to do this is with git commit's -s flag.

Don't be too afraid of getting it wrong the first couple of times. This might well be a new way of collaborating for you, and everybody understands that. Hopefully, you'll soon realise just how effective this style of collaboration can be compared to the alternatives.

Contributing other things

At this early stage, it's difficult to say what things would be useful to the project beyond code. Artwork and documentation will be extremely important and valuable, but we don't yet have a good place to keep / use them. But, don't let that dissuade you! At some point we'll need all sorts of things, and we might as well get the work done early if people are willing to do it.

If you think you have skills to offer the project beyond writing code, we'd love to hear from you. The best thing to do is to either talk with us on spectrum-discuss, or in real time on IRC.

Permission is granted to copy, distribute and/or modify this document under either the terms of the Creative Commons Attribution-ShareAlike 4.0 International License, or the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.