This section is dedicated to software developers who want to understand the Cytomine architecture and contribute to its components (database, image server, web services, ...) while the computer/data scientists section is dedicated to people who wants to import/export data and add new algorithms.

You will find here instructions about the software architecture, the development tools, coding rules, ...

As a new Cytomine developer:

  1. Get familiar with the general concepts of the main technologies used in Cytomine (Java, Groovy, Grails, PostgreSQL, Github, JS, Backbones.js ...), see the resources page,
  2. Take a look at the Global Architecture documentation to understand main Cytomine components and paradigms,
  3. Follow the basic steps to install a development environment and read about our recommended development tools and development guides.
  4. A quick look a the Main concepts/Packages may help you to have an overall view of the server source code (main ressources/domains, ...),
  5. You may then try to add a new resource type/concept in Cytomine core !

When you are ready to develop, you should take a look at: