Closed adbharadwaj closed 7 years ago
Hey, I am interested in this project. Can someone guide me?
@anu0012 Do you have any experience with Cytoscape and Java? We would need you to do the evaluation task given below.
Hi everyone,
Since an understanding of the Cytoscape Plugin Development is important for this project, we would like to see if you can quickly build a sample Cytoscape plugin. This will be a part of the selection/evaluation task.
The plugin should have following functionality
We would like you to create this sample project with the following documentation:
Once you are done, go ahead and share the link to the GitHub repository with us. We will be evaluating on the basis of following metrics:
Feel free to send me an email at adb@vt.edu if you need any help or clarification.
Reference links:
GSOC 2017 selected project
Background
GraphSpace is an easy-to-use web-based platform collaborating research groups can use for storing, interacting with, and sharing networks. A GraphSpace user can upload graphs through a REST API, import graphs created in Cytoscape, interact with graphs (view them, customize layouts, and save layouts), share graphs (create groups and add collaborators, share graphs among all members of a group or with the world), search graphs, and organize graphs using tags. GraphSpace has a comprehensive REST API that allows users to communicate programmatically with it.
Goal
This project will create a Cytoscape app for syncing networks from Cytoscape to GraphSpace and vice-versa. Conceptually, the app will be similar to the CyNDEx app, which syncs Cytoscape networks with NDEx. Currently, users can sync between Cytoscape and GraphSpace manually: First, export a network and its accompanying style in Cytoscape to JSON files. Then upload these JSON files to GraphSpace using its web interface. For the reverse direction, download a graph’s JSON and style JSON files from GraphSpace and then importing these files into Cytoscape.
This app will allow users to upload graphs and their styles directly from Cytoscape to GraphSpace without manual intervention and saving of files. This app will thus enable a Cytoscape user to seamlessly share their networks on the web, thus taking advantage of GraphSpace’s facilities for collaboration. A user can also quickly import GraphSpace graphs into Cytoscape, analyze them with other Cytoscape apps, possibly make modifications, and then re-upload them to GraphSpace. This project will also require creating a well-documented Java library that interfaces with the GraphSpace REST APIs.
Skills
This project will require knowledge of the following technologies:
Difficulty level 2
The student will have to learn how to develop a plugin for Cytoscape.
Potential mentors
Aditya Bharadwaj T. M. Murali
Contact
adb@vt.edu murali@cs.vt.edu