88888888ba 88 88 ad88888ba ad888888b,
88 "8b "" 88 d8" "8b d8" "88
88 ,8P 88 Y8, a8P
88aaaaaa8P' 88 ,adPPYba, 88 `Y8aaaaa, ,d8P"
88""""""8b, 88 a8" "8a 88 `"""""8b, a8P"
88 `8b 88 8b d8 88 `8b a8P'
88 a8P 88 "8a, ,a8" 88, ,d88 Y8a a8P d8"
88888888P" 88 `"YbbdP"' "Y8888P" "Y88888P" 88888888888
We recently switched to a new concept, so maybe you are looking for the old BioJS 1?
You can already browse the new registry. Transition of components from BioJS1 is in progress.
- Essentials
1.1. Objectives
1.2. What is BioJS
1.3. Why is nothing in this repo
- BioJS 1 vs. BioJS 2
2.1 What is different in BioJS 2.0?
2.2 Upgrading to BioJS 2.0 - Packages
3.1. What is a package?
3.2. How to search for a package
3.3. What do I need to use a package?
3.4. How do I use a package?
3.5. How to build a BioJS package - Developing packages
4.1. What do I need to develop?
4.2. How to create a package?
4.3. How to use snippets?
4.4. Guidelines
4.5. Gold standards
4.6. How to publish a package? - Support
5.1 Get involved
5.2. Contact
5.3. Documentation - License
- Essentials
- Represent consistently biological information across different projects
- Ease discovery, test and integration of graphical components
- Standardize and facilitate components development
BioJS builds a infrastructure, guidelines and tools to avoid the reinvention of the wheel in life sciences(= "Docker for Bio web components"). Our community builds modules than can be reused by anyone.
For BioJS 2.0 every component is a separate github repository. To search for a package, visit our registry. This repo is kept as intro guide and discussion repo. Feel free to open an issue (questions, suggestions, proposal or bug reports) here). However you are still invited to show your interest in this project and to star this repo.
- BioJS 1 vs. BioJS 2
↝ Summary presentation of the differences between BioJS1 and BioJS 2.0.
Old Components of BioJS 0.1 can rely on biojs-legacy, but we highly encourage you to write your code more modular.
We can ensure that if you have contributed with a component in the BioJS1 registry, it will continue to work in BioJS2. In fact we will script the migration and at some day in November or December migrate all remaining BioJS1 components. The final update of the EBI registry will be at the end of this year.
- Packages
A tiny building block like a FASTA parser or a visualization piece. If it obeys the rule "do one thing and do it well" , then it is (most likely) a package. The BioJS packages are published on the JavaScript package manager npm.
(Frontend repo, backend).
A web browser. For convenience you can grab a recent CDN version of
Normally the author provides also provides you with a minimized version of his component, but you can always easily build it yourself by running "npm run build-browser".
In general the README.md
of each project should explain you how to interact with it.
For visualization components you can just copy the JSBin or Codepen example.
You can also add it as a dependency of your project by using npm install <package> --save
.
Clone the package an run
npm install # this downloads all the dependencies of a package
npm test # optional
npm run build-browser # this will generate a JS file usuable in every browser (normally in the build folder)
Working examples of the component can be found in the snippets
folder of a package.
- Developing packages
Detailed installation instructions.
Even tough you can easily install node on Windows, a Unix-like OS is generally a more productive development enviroment.
↝ read our guide
To bootstrap a new project you can use the BioJS slush generator.
npm install -g slush slush-biojs
mkdir biojsAWesome && cd biojsAwesome
slush biojs
↝ read our sniper.
We have a few guidelines like
- biojs-events (Convention for the Observer pattern)
- example snippets
Especially the snippets should give you a quick start on how to use a component.
Our gold standards are conventions we highly encourage you to follow (especially for JS beginners). They will help you to create a great package!
Publish it on npm and add biojs
as keyword (more info).
(For visualization snippets, see the sniper).
- Support
Whether you want to write your own component and just submit it onto our BioJS registry or help to increase our ecosystem - we also value contributions :)
↝ There are many ways to contact us
For technical queries (questions, suggestions, proposal or bug reports) Github issues are preferred.
- We maintain a learning platform edu.biojs.net.
Pull requests are welcome.
Contents:
There is also a community-based wiki:
- License