=== Getting Started === Developing Cytoscape means programming in [[http://java.sun.com/|Java]]. There are plugins that make it possible to instead use Python/Perl/R, but these plugins only allow a small amount of the operations that Cytoscape provides. In order to assist new Developers in writing plugins, we have a variety of resources available. We provide a [[Concepts_Document]] that goes through the key classes in Cytoscape that are used by plugins. In addition, we have tried to make our [[CyAPI]] as complete as possible. Remember that you need not be limited to the [[CyAPI]]; you can use the [[CyAPI]] from any plugin in your plugin as well. Notably, Filters are only available as a plugin. If you need a jump start, there is a simple "Hello World" style [[Cytoscape_Plugin_Tutorial]] available. Also, possibly the best source of information is the [[http://cytoscape.org/community.php|Cytoscape Community]]. By signing up for our discussion email list, you will have access to the worldwide community of Cytoscape developers. Thanks for developing for Cytoscape! Access to the latest subversion code can be found here: [[SVN_Access]] Internal development pages can be found here: [[Cytostaff_Development]] === Resources === ''Please be aware that some of these pages may be outdated. The most current and reliable source of information is the Cytoscape subversion source code.'' ==== General Overview ==== * [[Community_development_process]] * CytoscapeData -- Class Overview * [[CytoscapeData_Usage]] -- Concepts and Example Code * [[Cytoscape_architecture]] * [[Cytoscape_User_Manual]]: Development draft ==== Plugin Development and Implementation ==== * Read through the [[Cytoscape_Plugin_Tutorial]] first * [[How_to_use_external_libs_in_a_Cytoscape_plugin]] * [[SettingUpEclipseForPluginDevelopment|Setting up Eclipse for plugin development]] * [[Setting_up_Netbeans_for_plugin_development]] * [[Plugins_in_Development]] * [[Embedding_a_Derby_database]] * [[Plugin_license_policy]] * [[How_to_release_a_plugin]] * [[Plugin_Download_Site_Tutorial]]for creating your own plugin download site for Cytoscape ==== Further Reading ==== * [[Cytoscape_via_Java_Web_Start]] * [[CytoPanel_Tutorial]] * [[Custom_Node_Graphics]] * [[Species_Specific_Context_Menus]] -- Details on right-click menus * [[Visual_Mapping_System_Guide]] * AttributeBrowser -- How-To Guide for the new Attribute Browser * [[Cytoscape_Desktop_Menus]] -- Thoughts on creating menu items * [[How_to_update_the_Cytoscape_manual]] * [[RFC_Index|RFC Index Page]] -- Request For Comments pages allow discussion about proposed new features and other issues * [[Usability_lessons_for_Cytoscape_developers]] '''Note: This is a user editable wiki, although you must be logged in to edit pages. Please feel free to add content here and fix any errors you see.'''