# Contribute to the Cytomine project

Here will be listed some simple ways to contribute to the Cytomine project. As a Free and Open Source project, your modifications will improve Cytomine for every Cytomine user. As our code is hosted on GitHub, the contributions are proposed with Pull Requests. See here (opens new window) and here (opens new window) for information about Pull Requests.

It is never easy to start contributing to an existing project so, we have listed here the easiest but useful modifications that are a good way to start contributions to the Cytomine projet :

  1. Report bugs. If you encounter a bug during your use of Cytomine, please report it to the Cytomine team via the GitHub repository, contact form (opens new window) or via email.
  2. Fix typos. If you see a typo, a translation error or something similar, you can contribute by fixing it and propose your modification to the developer team. See below for translation modifications.
  3. Add functions to the external clients. All the REST entrypoints of Cytomine are not wrapped in the clients. If you need a features that is not supported by the client, you can extend the client and then make a pull request.
  4. Follow our Github issue trackers. We try to create issues with a low complexity (and a complete guide line into the ticket description) to allow you to be able to join us into this adventure. 😃 Theses issues are labeled as "good first issue" and can be found for the core (opens new window), IMS (opens new window), the bootstrap (opens new window), and in our other components (opens new window).
  5. Develop a new client. If your favorite programming language doesn't have a dedicated client, you can start the development of a new one. We will be happy to guide you.
  6. Share your AI algorithms that can be plugged to Cytomine.
  7. Contribute to our Open Access Collection. The Cytomine cooperative maintains a collection (opens new window) composed of high quality images dedicated to show the advantages of Cytomine and image analysis. You can contribute to an Open Access project by sharing your most beautiful high resolution images under a free licence.

# Add new image format support

Thanks to the new Cytomine component, it is possible to add new image formats using the Python Image Management Server (PIMS). One can either add the new format directly in the PIMS core or add new plugins.

# Translate Cytomine in your language

The Cytomine Web-UI supports the language internationalization. Currently, only English and French are supported but you can easily help us to extend it to other languages.

To add a new language to Cytomine, you need to modify the translations.csv file :

  • You can get it by cloning the GitHub repository (opens new window) or by downloading only the translation file available at this link (opens new window).
  • As it is a csv file, you can open it in a text editor, a code editor or a spreadsheet as Excel or Libre Office Calc.
  • In the first row, you will find the language key (en for English, fr for French).
    • If the language already exists, all the words in this language will be in the same column as the language key.
    • To add a new language, add the key of this language (See here (opens new window) to find the ISO 639-1 code for your language) in the first line of the first free column.
  • You can now start to translate the lines into your languages
  • Once you are done you can share your modifications with us via the GitHub repository, contact form (opens new window) or via email.

Note that every word not translated will be displayed in english in the User Interface.