Develop plug-in for Cytoscape 3.x

Develop plug-in for Cytoscape 3.x


Job Description

The project is a plug-in from Cytoscape 3.x (

It has two components:
- Reimplement necessary functionality from the previous version of the plug-in built on Cytoscape 2.x
- New functionality

The architecture and design of the new version have been thought through and we need someone to work with the technical lead to deliver the project.

Selected candidate will be responsible for:
- implementing functionality using Cytoscape APIs
- UI design and implementation
- Source-code documentation
- Unit tests / UI tests

Technical lead will be responsible for:
- web-service client API
- specification of functionality

This project is expected to last a month. Further Cytoscape work will be available if the project goes well.

- Language: Groovy (
- Modular: OSGi (, used by
Cytoscape 3.x
- UI: Swing
- Developed on: Unix (Mac or Linux), productive shell script based
build system

About the Plug-in
Cytoscape is a network visualizer (Java/Swing desktop application) for the biological community. The plug-in's purpose is to explore biological knowledge graphs as Cytoscape networks. The biological knowlege graphs are retrieved from a web service provided by the OpenBEL framework

Previous Version
A previous plugin was created on the Cytoscape 2.x application and is located at It is open-source software. You can experiment with the existing plug-in by following the easy setup instructions:

New Version (this project)
This project is a complete rewrite of the previous version using the architecture stated above. New functionality will also be explored
This work will also be released under the same LGPL license and developed in the open on Github. The selected candidate will work closely with the technical lead and submit pull requests to the
upstream repository from their fork.

Additional Skills
- (Bonus) GitHub with pull-request workflows
- (Bonus) Cytoscape / Cytoscape plugin development
- (Bonus x2) Cytoscape 3.x