Home

Awesome

Java Swing Interface for the Genome Analysis Toolkit (GATK) https://www.broadinstitute.org/gatk/

Screenshot

Screenshot 1

Compilation

Requirements:

Tested with GATK 3.3 .

Create a new file local.mk (in the Makefile directory) containing a property gatk.jar defining the path to the GATK jar.

gatk.jar=/dir1/dir2/GenomeAnalysisTK.jar

Then run

$ make

To run GATK-UI, type

$ make run 

or run the executable jar:

$ java -jar path/to/gatk-ui/dist/gatk-ui.jar 

Questions

Why did you create this tool ?

Some non-bioinformatician collaborators often want some coverage data for a defined set of BAM, for a specific region...

Did you test every tool ?

NO

How did you create an interface for each GATK tool ?

Each tool in the GATK is documented in a web page: https://www.broadinstitute.org/gatk/gatkdocs/org_broadinstitute_gatk_tools_walkers_variantutils_SelectVariants.php and each web page is associated to a structured JSON page https://www.broadinstitute.org/gatk/gatkdocs/org_broadinstitute_gatk_tools_walkers_variantutils_SelectVariants.php.json

{
  "summary": "Select a subset of variants from a larger callset",
  "parallel": [
    {
      "arg": "-nt",
      "link": "http://www.broadinstitute.org/gatk/guide/tooldocs/org_broadinstitute_gatk_engine_CommandLineGATK.php#-nt",
      "name": "TreeReducible"
    }
  ],
  "activeregion": {},

This json is transformed to XML in order to process it with XSLT . A XSLT stylesheet generates some java code

How can I add a new tool ?

add a tool package to the property gatk.docs in the Makefile.

Deploying as a JNLP application

In local.mk add the following properties:

## where to install the tool 
jnlp.dir=/var/www/pages/gatk-ui/
## a password for jarsigner
key.password=mypassword
## base url
jnlp.baseurl=http://localhost/gatk-ui/

Then run:

$ make jnlp

The application will be available at ${jnlp.baseurl}/gatk-ui.jnlp

History

Author

See also

Report bugs / Contribute

License