Contributing to BlueMind
Contribution rules
BlueMind is an open-source project. Contributions are welcome and even encouraged!
Modifications should be first sent as a patch. First - or preferably before that, to avoid rejections or misunderstandings - send us a description of your modifications - object and functional aspect. For graphical aspects you should send us a mockup beforehand.
We are extremely meticulous about software quality (code, architecture, as well as ergonomics and overall consistency). We apply the same standards to any code or functionality that comes into BlueMind. We don't accept all functionalities and we are demanding as to their ergonomics and appearance.
Legally-speaking, our code is open source (Affero GPL). For any contribution to the generic product, you must sign a copyright assignment that gives BlueMind co-ownership of your code (you also keep your own ownership rights). The thinking behind this is simple, and it is the same that the Free Software Foundation (http://www.gnu.org/licenses/why-assign.html) applies: we want to ensure BlueMind's continued existence and keep overall control over it.
The document you must sign is:
- For individuals: BlueMind Individual Contributor Assignment Agreement-v1.0-VF.pdf (English version)
- For companies and organizations: BlueMind Entity Contributor Assignment Agreement-v1.0-VF.pdf (English version)
Development environment
To set up a development environment for BlueMind, simply follow the steps below:
- Install BlueMind on the development machine to initialize the database and the configuration. To do this, please refer to our Installation Guide.
- Fetch BlueMind's sources by cloning the version available in Git repositories on your machine:
git clone https://forge.bluemind.net/stash/scm/bm/bluemind-public.git
You can use the command above with the option --depth 1
to retrieve a clone without history.
Note: the repository can be viewed online at this address: https://forge.bluemind.net/stash/projects/BM/repos/bluemind-public
Software translation
You can help with the translation of BlueMind into one or several languages through this site: BlueMind Translate
BlueMind MarketPlace: tools and add-ons
You can help enhance BlueMind by building on it through:
- add-ons to the core product through extension points
- integration with external solutions
- system integration tools
You can also contribute to BlueMind by developing add-ons (modules or programs) and sharing them via the BlueMind MarketPlace.
If you would like to contribute via our MarketPlace, please contact us: https://www.bluemind.net/contact/.
You can also have your tool published automatically on our marketplace using our MarketPlace API. To do this, please refer to our page on Using the Marketplace API.