What is BioJS? Improve this page

Lego blocks (Image credits: Jeremey Page)

Basically BioJS components behave like Lego blocks. You don’t start from scratch - you can build on top of other blocks.

What exactly is a BioJS package?

A tiny building block that can be reused by anyone. It could be anything from a FASTA parser to a tree algorithm, or even a simple visualization module.
Moreover a BioJS package is also an npm package.

npm stands for node package manager and is the package repository that powers node.

Node.js is a runtime environment platform for server-side JavaScript applications.

What is BioJS?

BioJS is far more than just a registry for components - we aim to build an infrastructure, with guidelines and tools to avoid reinventing the wheel in life sciences – think “Docker for Bio web components”.
In the early days of BioJS we defined specific Easy to goals - our set of core principles we, as a community, try to follow when developing BioJS components and its resources:

  • Easy to combine - BioJS makes extensive use of Node’s require() method to load modules - objects that may contain values, objects or functions from another JavaScript file. E.g. require('my-awesome-biojs-component') will load the module of my-awesome-biojs-component into your own project (with browserify we can also use run require in the browser)

  • Easy to use - BioJS lets you use components easily by single-line installation via npm. All you need is to write npm install my-awesome-biojs-component into your terminal to get everything you need to reuse the my-awesome-biojs-component (you will see that npm exactly behaves like our Lego block manager)

  • Easy to develop : BioJS provides with you a minimal essential set of conventions and Best Practices, so you as a contributing developer can enjoy as much freedom as possible when creating your own components

  • Easy to discover : BioJS sums up over 130 components in the BioJS Registry

  • Easy to understand : The community of BioJS works steadily on creating and improving learning resources for its users and developers. If you find anything to be unclear or if you are missing something, please feel free to edit these pages on github by sending us a pull request, or request new learning sections by creating a github issue

  • Easy to maintain : Everyone creates a github repo for their own component and maintains only the code they love!

  • Easy to get involved : Apart from our amazing tutorial, we are also very active on github and gitter

What you get using BioJS

In the next video you can check out what you can achieve by reusing and creating BioJS components: