Documentation: Candoer

From CompBio
Jump to: navigation, search

CANDOER (Cando Web App) guidelines. This is just a starter for now. This page is in making and content would be added/edited as and when required.


  • Device/Browser is the boss
  • Progressive enhancement
  • Minimalistic and consistent design
  • Modular coding

General suggestions

  • Do not use pixels (px) and points (pt) in defining size. Instead, use *em* for fontsize and *percentage* (%) to define any other size such as, layout, box size, image size, etc.

Reason: pixels defined fonts/images are device independent and would act weirdly on retina display devices.

  • Use jQuery to define every UI. It not only gives cross-browser compatibility but also degrades gracefully if viewed in an outdated browser.

Reason: HTML5 is implemented differently in different browsers. Also, jQuery has advanced touch implementations such as *tap* which is more responsive than native HTML5 *click* button. Hence, considering cross-browser compatibility and consistency, jQuery is a better option as of today (16May2013).

  • Use PhoneGap to build device dependent UI/UX features. It not only supports all Mobile OS in a consistent manner but also provides javaScript APIs to access native SDK tools.
  • All javaScript should exist as function: It would greatly help in disseminating CANDOER to all devices sooner.
  • Avoid images (excepting logo), use CSS or jQuery-UI to represent colour instead.

Reason: CSS is consistent and renders faster than images. Every image is a challenge for cross-browser/device view consistency.

  • Avoid Java and Java dependent tools/plugins.

Reason: Most browsers consider Java applications as a threat. Few other browsers do not support Java entirely.

  • Follow camelCaseNamingConvention (which is widely accepted in javaScript community) where excepting the first letter of first word, all the following words start with a capital letter. Give no *space* between words for any filename or function name.

Reason: camelCase is easy to read and follows javaScript convention. *space* in a filename is not recognized by many APIs and plugins that is being used (or intend to be).

CANDO data

  • I - Compound Specific:
    • IUPAC name
    • Synonyms
    • Cando ID
    • 2D structure file (mol, mol2, PDB?)
    • 3D structure file (mol, mol2, PDB?)
    • Smiles
    • Source (FDA, Natural compounds...)
    • External links (Chemspider ID, ChEMBL ID, DrugBank ID, ...)*
    • Physico-Chemical Properties*
  • II - Protein Specific:
    • Name
    • Uniprotid
    • E.C. Number (if available)*
    • Pfam (necessary?) *
    • Structure file : None / Modeled / PDB
    • Do we have cando ID for proteins?*
  • III - Indication Specific:
    • Therapeutic compounds
    • Implicated proteins
    • Collaborators
    • Causative agent(s)
    • Key words (protein name; compound name; ...)
  • IV - Collaborator Specific:
    • Name
    • Indications
    • Institution
    • GeoLocation *
  • V - CANDO generated:
    • Protein/compound matrix as generated by COFACTOR-ROCS
    • COAFACTOR ligand/CANDO compound ROCS scores (to add)
  • VI - Miscellaneous:

\*Potential future additions and I am not aware if such data already exists.

Personal tools