tripal/tripal_blast

View on GitHub
templates/template-tripal-blast-help.html.twig

Summary

Maintainability
Test Coverage
{#
/**
 * @file
 * Default theme implementation of BLAST Help.
 */
#}

{{ attach_library('tripal_blast/tripal-blast-admin') }}

<h3>Tripal BLAST Module Description</h3>
<p>This module provides a basic interface to allow your users to utilize your server's NCBI BLAST+.</p>

<div id="tripal-blast-tabs">
  <ul>
    <li><a href="#tab-setup">Setup</a></li>
    <li><a href="#tab-function">Functionality</a></li> 
    <li><a href="#tab-jobs">Large jobs</a></li> 
    <li><a href="#tab-visual">Genome visualization</a></li>
  </ul>
  
  <div id="tab-setup">
    <h3><b>Setup Instructions</b></h3>
    <ol>
      <li>
        Install NCBI BLAST+ on your server (Tested with 2.2.26+). There is a
        <a href="https://launchpad.net/ubuntu/+source/ncbi-blast+">package available
        for Ubuntu</a> to ease installation. Optionally you can set the path to your
        BLAST executable: {{ context_links['link_config'] }} Page.
      </li>
      <li>
        Optionally, create Tripal External Database References to allow you to link
        the records in your BLAST database to further information. To do this simply
        go to {{ context_links['link_dbadd'] }} and make sure to fill in the Database
        prefix which will be concatenated with the record IDs in your BLAST database
        to determine the link-out to additional information. Note that a regular
        expression can be used when creating the BLAST database to indicate what the
        ID is.
      </li>
      <li>
        Create "BLAST Database" {{ context_links['link_nodeadd'] }} nodes for each dataset you want to make available for your users to BLAST
        against. BLAST databases should first be created using the command-line
        <code>makeblastdb</code> program with the <code>-parse_seqids</code> flag.
      </li>
      <li>
        It's recommended that you also install the <a href="http://drupal.org/project/tripal_daemon">Tripal Job Daemon</a>
        to manage BLAST jobs and ensure they are run soon after being submitted by the
        user. Without this additional module, administrators will have to execute the
        tripal jobs either manually or through use of cron jobs.
      </li>
    </ol>
  </div>

  <div id="tab-function">
    <h3><b>Highlighted Functionality</b></h3>
    <ul>
      <li>Supports {{ context_links['link_blastn'] }},
        {{ context_links['link_blastx'] }},
        {{ context_links['blastp'] }} and
        {{ context_links['tblastx'] }} with separate forms depending upon the database/query type.
      </li>
      <li>
        Simple interface allowing users to paste or upload a query sequence and then
        select from available databases. Additionally, a FASTA file can be uploaded
        for use as a database to BLAST against (this functionality can be disabled).
      </li>
      <li>
        Tabular Results listing with alignment information and multiple download
        formats (HTML, TSV, XML) available.
      </li>
      <li>
        Completely integrated with Tripal Jobs: {{ context_links['link_jobs'] }}
        providing administrators with a way to track BLAST jobs and ensuring long
        running BLASTs will not cause page time-outs
      </li>
      <li>
        BLAST databases are made available to the module by creating Drupal Pages: {{ context_link['link_nodeadd'] }}
        describing them. This allows administrators to use the Drupal Field API to add any information they want to these pages:
        {{ context_links['link_dbfields'] }}
      </li>
      <li>
        BLAST database records can be linked to an external source with more
        information (ie: NCBI) per BLAST database.
      </li>
    </ul>
  </div>

  <div id="tab-jobs">
    <h3><b>Protection Against Large Jobs</b></h3>
    Depending on the size and nature of your target databases, you may wish to constrain use
    of this module.
    <ol>
      <li>Limit the number of results displayed via admin page. The recommended number is 500.</li>
      <li>
        Limit the maximum upload file size in php settings. This is less useful because some
        very large queries may be manageable, and others not.
      </li>
      <li>
        Repeat-mask your targets, or provide repeat-masked versions. Note that some
        researchers may be looking for repeats, so this may limit the usefulness of the BLAST
        service.
      </li>
    </ol>
  </div>
</div>