Guide for new developers
1. Cytomine core
Requirement
- Java basic knoweledge
- Basic knoweledge of web technologies like HTTP, Rest API, JSON, AJAX,... (if not the case, read this little introduction to HTTP/Rest or Google it)
Groovy
If not yet done, install Groovy. Play with this language and read the non-exhaustive Groovy functionnalities list used in Cytomine source code.
You can create a file "test.groovy" with:
println "Hello world!"
And run this with:
groovy test.groovy
Grails
A good way to start learning Grails is to create a new Grails app. You can quickly read the book "The Definitive Guide to Grails 2" (free inside ULg network) or the Grails official web documentation.
In both case, skip the "Grails view" (gsp) chapter/section.
You can try to add a new resource on Cytomine using this guide. This guide assume that you have a basic knowledge of Grails components.
You will learn how to add:
- domains
- urlmappings
- controllers
- services
- tests
inside Cytomine core application.
2. Cytomine web app
Requirement:
- Javascript basic knoweledge
Backbone.js
This document explains how to add a new resource in the web client with Backbone.js.
3. Cytomine client
Requirement:
- Java OR Python knoweledge
Java client
The client is a simple library that provides methods to manage data in Cytomine.
You can do something like: cytomine.addProject("MyNewProject") and it will map the data, perform the HTTP request, parse the response, check the status code,...
See this guide for the Java client.
Python client
Same as Java client.
See this guide for the Python client.
4. Cytomine IMS
See the Cytomine core. IMS is written in Groovy with Grails too.