Skip to content

biojs/biojs3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 

Repository files navigation

Draft of BioJS 3: Web components

Web components logo

Yeah, BioJS is moving forward to have every module as Web Component with Custom Elements!

Join the chat at https://gitter.im/biojs/biojs3

As an overview you might want to watch A jump through web wormholes by @greenify that givens an introduction why Web Components are the future for BioJS.

What are Web Components?

"Web Components are a set of standards currently being produced by Google engineers as a W3C specification that allow for the creation of reusable widgets or components in web documents and web applications. The intention behind them is to bring component-based software engineering to the World Wide Web." (Wikipedia)

Why Web Components?

  • automatic encapsulation thanks to the shadow DOM (no more problems with components modifying your site, id conflicts, css conflicts or problems to create multiple instances of a components)
  • Custom DOM Elements (new HTML elements e.g. just for biological data)

Everyone is familiar with HTML and can add a <button> DOM element to their website. Why not let them add a <biojs-msa> element?

Imagine to include an multiple sequence alignment into your website with a short HTML snippet like this:

<biojs-msa>
  <biojs-io-fasta url="./Q7T2N8.fasta" />
</biojs-msa>

Why now?

  • The first official release of Polymer (version 1.0) was at this year's Google I/O (2015-05-29)
  • The Polymer project worked hard to reduce the Web Component polyfill to a lightweight shim
  • Supported in Chrome since version 36
  • Web components will be the future!

Not convinced yet?

Have a look at the presentations listed at webcomponents.org - especially:

What is the roadmap?

Our roadmap is work in progress, please look at our github wiki.

How to help?

Currently there is development and brainstorming is happening here at github

  • If you have an idea, proposal -> don’t hesitate to open an issue
  • IF you want to port your (or a) component to polymer -> go for it & discuss your progress with us here :)
  • Have a look at our roadmap (at the wiki) & get inspired
  • If you haven't found a task yet, browse through the open issues or ping us on gitter

Releases

No releases published

Packages

No packages published