Template:DevelopmentThe source code of Fiji/ImageJ2 is very modular, i.e. it is organized into well-separated subprojects. That separation offers many advantages for efficient software development and it is well worth investing a little bit of time to understand.
The actual source code development is managed using the Git version control system.
All source code is on GitHub. The user-facing parts are:
- ImageJ – a generic image processing application
- Fiji – a distribution of ImageJ and plugins supporting life sciences in particular
Both ImageJ and Fiji consist of multiple sub-projects; All projects address their individual "concern" and leave all other concerns to the respective other projects.
The developer-facing parts are:
- ImgLib2 – generic multi-dimensional data processing in Java
- SCIFIO – file I/O
- SciJava – common utilities, plugin infrastructure, scripting, the context
Building from source
- Install Maven.
- Clone the source repository of interest.
mvnfrom the top-level directory.
Using an IDE
You can browse the Javadocs online.
Running ImageJ1 unit tests
We have written a substantial number of unit tests to exercise ImageJ 1.x functionality. See the Unit tests for ImageJ1 page for more information.