Difference between revisions of "Co-op Documentation"

From WormBaseWiki
Jump to navigationJump to search
Line 20: Line 20:
 
**Details:
 
**Details:
 
***Making corrections to Gene page interface based on curator consultation
 
***Making corrections to Gene page interface based on curator consultation
***
 
**Progress:
 
***<del>Pending consultation from curators. Teleconference: 11:30 am EST Wednesday, January 18th, 2012</del>
 
 
***Interactions:
 
***Interactions:
**** add legend to describe edge colours in cytoscape image
+
****Add legend to describe edge colours in cytoscape image
 
***Phenotype:
 
***Phenotype:
**** add evidence information
+
****Add evidence information
**** standardize look and feel of tables (convert to data tables)
+
****Standardize look and feel of tables (convert to data tables)
 
***Reagents:
 
***Reagents:
****<del>drop the word "found" whenever we use search results</del>
+
****<del>Drop the word "found" whenever we use search results</del>
****switch search results to actual list of results(expand if too many)
+
****Switch search results to actual list of results(expand if too many)
*****see/learn how this was done for the Expression widget
+
*****See/learn how this was done for the Expression widget
 +
**Progress:
 +
***<del>Pending consultation from curators. Teleconference: 11:30 am EST Wednesday, January 18th, 2012</del>
 
*Interface Corrections
 
*Interface Corrections
 
**Details:
 
**Details:

Revision as of 21:22, 20 January 2012

Current Tasks

Tasks In Progress

  • Refining Interactions widget:
    • Details:
      • If the number of interactions is too high, only show the minimal table (hide Cytoscape?) and add "Show More"/"Show Neighbouring Interactions"? option
      • Otherwise, show all interactions(nearby interactions included) and Cytoscape plugin
    • Progress:
      • Looking into BLASTP field in Homology Widget on Protein page that uses similar mechanism
      • Split interactions into 2 methods, one for those involving current gene and one for nearby interactions
      • If local interactions exceeds 400 100, doesn't load nearby (e.g. unc-26(82) vs. daf-16 without nearby(433) vs. daf-16 with nearby(1386))
      • Combined duplicate edges (duplicate implies matching source node, target node, direction, type, & phenotype)
      • Changed table: "Details" column with single link to interaction object -> "Citations" column with list of links to duplicate interactions
      • Modified tooltip
        • Removed interaction number and link to page (misleading for multiple)
        • Added phenotype and number of citations to tooltip
      • Added "edge width based on number of citations" feature
        • Set 15 as max number of citations; anything higher will be scaled down
      • Incorporate toggle
  • Gene page alterations
    • Details:
      • Making corrections to Gene page interface based on curator consultation
      • Interactions:
        • Add legend to describe edge colours in cytoscape image
      • Phenotype:
        • Add evidence information
        • Standardize look and feel of tables (convert to data tables)
      • Reagents:
        • Drop the word "found" whenever we use search results
        • Switch search results to actual list of results(expand if too many)
          • See/learn how this was done for the Expression widget
    • Progress:
      • Pending consultation from curators. Teleconference: 11:30 am EST Wednesday, January 18th, 2012
  • Interface Corrections
    • Details:
      • Look into rearranging the elements in widgets so that they do not appear strange/distorted when switched from one- to two-column views or using smaller displays
      • Will require modifying the templates
  • Homology Widget
    • Needs to be modified
      • May need to move orthologs to separate widget

Other Tasks

Additional tasks that require further investigation

Getting Started

Members/Contacts

Meetings

  • WormBase OICR Developers Teleconference
    • Mondays, 3:00PM
    • Phone-in 1-800-747-5150 id: 6738514
  • WormBase OICR Developers Teleconference with Lincoln
    • Wednesdays, 4:00PM EST
    • Lincoln's office
  • WormBase International Groups Teleconference
    • Every other Thursday, 11:30AM
    • Lincoln's Office
  • Group Meeting
    • Fridays, 3:00PM
    • HL31 Conference Room/TBA

Tools

The following are some of the tools with which many major aspects of WormBase are developed. You should familiarize yourself with them through documentation and examples.

Perl

There is significant documentation on getting started with Perl. One starting point is PerlMonks.

Catalyst

Catalyst is the web development framework used to develop WormBase. To get started, read and try examples from

Git

Git is a version control system used for collaboration and backup in the development process. One starting point is the progit tutorial

Given that we have modified two files a.txt and b.txt but do not wish to keep the changes made to b.txt

git status
git checkout b.txt
git add a.txt
git commit -m “Added change1 and change2 to a.txt”
git push

If we have did not have the most recent version, then we will run into an issue when trying to push. In this case we can:

git fetch
git merge
git push

Note: pull is similar to using fetch + merge

Other

Some other tools that you should be aware of but may not be required to know/interact with include:

  • JavaScript
  • ACeDB
  • MySQL
  • Xapian
  • GFF
  • Cytoscape Web
    • Cytoscape Tutorial
    • Plugin generally used for pathway analysis
    • This plugin is used in the Interactions widget on the Gene page ([WormBase dir]/root/templates/classes/gene/interactions.tt2)
    • Installation directory (for updating): [WormBase dir]/root/js/jquery/plugins/

General Concepts

Widget Data Loading

Widget Loading

REST Controller:

  1. Catches internal url (/rest/widget/...)
  2. Determines the class and widget from the url
  3. From class and widget, determines which fields are required from the configuration file (wormbase.conf)
  4. API methods request data from appropriate databases, process/format/package the data, and then return it(/lib/WormBase/API/Object/[Class].pm)
  5. Sends data to the template to be used in rendering the widget (/root/templates/classes/[Class]/[Widget].tt2)

Other Notes

Useful Macros when editing templates

  • /root/templates/config/main
  • /root/templates/shared/page_elements.tt2