Contribute

karenswry edited this page Jan 11, 2018 · 7 revisions

Contributing to Themis

Themis is an open-source, Apache 2 licensed software, maintained by Cossack Labs for building reliable cryptography in our products: Acra, Hermes and Toughbase. You can hack it any way you want and contribute things back if you need something more than what we provide. As a development company, we focus on implementing features that are important to our products but would gladly spend some time to make Themis useful for everybody.

We highly encourage you to:

  • Report any bugs and request features via GitHub Issues.
  • Report a bug and fix it with a patch via our GitHub Pull request (after issuing a corresponding issue and leaving a link to pull there).
  • Participate in the theoretical development and design of Themis in the corresponding Google Group.
  • Add something new to Themis. There is a certain design scheme according to which we'd like to keep developing Themis, and if your contributions fall along with it, we'd be more than glad to accept some fundamental additions. It's better to discuss the subject using email or our Google Group before taking action.

Every commit that goes into the master branch is audited and reviewed by somebody from Cossack Labs, don't be surprised if the review takes longer than you expect.

"I'd like to help somehow, but don't know what will be useful. What should I do?"

There's a Development status page, which displays what we're working on right now and what critical stuff is not there yet. If you'd like to take over any of those tasks, get in touch or just raise an issue and work on it.

If you'd like to do independent parts (implement new procedures/objects, do a language wrapper or a set of examples for languages or architectures we don't have and don't even plan yet) — just go ahead and let us know when you finish.

If you'd like to participate in the core development more closely, get in touch.

Getting in touch

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.