A fast tool to convert BioJS components into Galaxy visualization plugins.
JavaScript Mako
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.



NPM version

A fast tool to convert BioJS components into Galaxy visualization plugins.

Warning: This tool is in a ALPHA stage. Use at your own risk.

It was tested so far with the

How to add a (BioJS) Plugin

  1. Define your data types in the package.json
  "galaxy": {
    "datatypes": ["sequence.Fasta", "sequences", "msa.clustal"]
  1. Add the galaxy-vis keyword to your package.json

So your keyword list could look like this.

keywords = ["biojs", "galaxy-vis"]
  1. Define a custom galaxy.mako (package root)
	galaxy.el.textContent = response;
	console.log("datatype", galaxy.dataType);
  1. Check whether you have defined correct sniper settings.

There are some predefined variables in the galaxy namespace.

  • url raw URL to your data file
  • dataType dataType of your file
  • config galaxy config parameters (e.g. id)
  • meta galaxy meta information (e.g. timestamps)
  • el an existing div for your component
  • relativeURL URL to your galaxy vis plugin
  • jsonURL URL to your data file (wrapped in a JSON object - only use this if the API throws an error for the raw file

TODO: read more settings like a data provider from the package.json

How does it work

  1. Query npm: "give me all package with the "galaxy-vis tag"
  2. For every package (async)
    a) Download the package and install its dependencies
    b) Browserify the package and copy the output to /static/{{name}}
    c) Copy the js and css resources defined in the biojs sniper settings to static (http links are downloaded)
    d) Copy the galaxy.mako into a mako template
    e) Generate a config file based on the specified data types

How to run

You can find a step for step example guide here.


npm install -g biojs2galaxy



Specify a specific output folder (default: $(pwd)/build

biojs2galaxy <folder>

(You need npm & node, of course)

How to use

  Usage: biojs2galaxy [packages]

  Automated import of biojs components into galaxy


    -h, --help             output usage information
    -V, --version          output the version number
    -v, --verbose          Increase verbosity
    -a, --all              Download all packages from npm
    -o, --output [folder]  Output folder
    -p, --path [path]      Path to local package
    -r, --remove           Clear output folder

Download packages:

biojs2galaxy msa,biojs-vis-sequence

Download all packages:

biojs2galaxy --all

Local mode (for development):

biojs2galaxy -p ../msa

How to develop

git clone https://github.com/biojs/biojs2galaxy
cd biojs2galaxy
npm install
node biojs2galaxy.js