Code Monkey home page Code Monkey logo

biojs's Introduction

Overview

The aim of this project is to create a library of graphical components easy to reuse to represent biological information. A library easy to maintain and develop by identifying minimal functional units that could be used as building blocks for more complex applications. A browser independent JavaScript library easy to integrate in web applications regardless the programming language used to develop the server side.

Objectives

  • Represent consistently biological information across different projects
  • Ease discovery, test and integration of graphical components
  • Standardize and facilitate components development

Use a BioJS component

  • Search and select a component in a BioJS registry. i.e. EBI BioJS registry
  • Look at the "overview" section to see an example of how a component works
  • Check the "options", "methods" and "events" sections to see more information about the functionality provided by a component
  • Find inside the "installation" section the code and dependencies you will need to make a component working in a web page

Develop a component

BioJS components are framework agnostic, only requiring the code to be written in JavaScript. The developer of a new component is thus free to use any framework (e.g. JQuery, YUI) and to include any other library (e.g. Raphael, D3).

Any component by definition extends the BioJS reference implementation incorporating the rules provided by the BioJS specification. The BioJS specification defines:

  • the component architecture
  • a protocol to handle events that allows communication between components
  • the component extension through Object Oriented Inheritance
  • the code documentation format
  • documentation on how to include examples to test the component functionality

Create a new component from scratch

We would recommend you to follow our tutorials and read the BioJS documentation.

Visualization components can be as complex as you want. However we encourage you to identify the minimal parts that make sense to isolate building components that can be reused independently or as a part of another more complex components.

Before coding we suggest to collect requirements that will help you to think about how to implement a component. You could use our template to collect requirements or you could follow your own. If would like to share your requirements document we will be happy to include it in the list of component requirements.

Wrap JavaScript functionality as BioJS

If you already have some JavaScript functionality you could make it BioJS creating a wrapper on top of it. A wrapper is simply a new BioJS components using your JavaScript functionality as a dependency. We do not have a specific tutorial for this, but you could use the tutorials we have to create a component.

Feedback

Please feel free to send us feature requests and/or ideas of what it should be considered in the development of BioJS through the issue tracker or the BioJS mailing list.

Join the BioJS mailing list if you would like to send us an email to participate or provide feedback about the project.

Code license

Apache License 2.0

biojs's People

Contributors

daniwelter avatar eugeniaeueu avatar fabsta avatar ftalo avatar glaunay avatar gustavo-salazar avatar gyachdav avatar ilia-kats avatar jmvillaveces avatar johncar avatar ljgarcia avatar maxkfranz avatar noedelta avatar rajido avatar saketkc avatar shubhamd avatar skutac avatar swanandgore avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.