Skip to content

Commit

Permalink
Merge 7cedb9d into b9c49f1
Browse files Browse the repository at this point in the history
  • Loading branch information
StuntsPT committed Jun 1, 2017
2 parents b9c49f1 + 7cedb9d commit 616938b
Show file tree
Hide file tree
Showing 3 changed files with 144 additions and 68 deletions.
6 changes: 0 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,3 @@ node_js:
- "0.10"
after_script:
- npm run coveralls
notifications:
irc:
channels:
- "chat.freenode.net#bionode"
template:
- "%{message} %{repository}#%{build_number}: %{commit_message} (%{branch} - %{commit} : %{author})"
102 changes: 102 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Contributing to Bionode

Thank you for your interest in contributing to Bionode :tada:!

Bionode is an Open Source community that aims at building highly reusable code and tools for bioinformatics by leveraging the Node.JS ecosystem. We use Node.JS Streams to process big genomic data.

We welcome all kinds of contributions at all levels of experience, either code, knowledge, questions or suggestions. Many of our goals and GitHub issues do not require biology knowledge (e.g. very technical, coding) and some don't even require JavaScript knowledge (e.g. events, community, documentation).

This document has a set of guidelines for contributing to Bionode on GitHub. These are guidelines, not rules. This guide is meant to make it easier for you to get involved.

* [Participation guidelines](#participation-guidelines)
* [What we're working on](#what-were-working-on)
* [How to submit changes](#how-to-submit-changes)
* [How to report bugs](#how-to-report-bugs)
* [Communication channels](#communication-channels)

## Participation guidelines

This project adheres to a [code of conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. Please report unacceptable behavior to [mail@bionode.io](mailto:mail@bionode.io).

## What we're working on

Take a look at the GitHub issues in our organisation wide project board at [project.bionode.io](http://project.bionode.io). Here's what each column means:
* **Backlog** All the issues we have open (sorted by most recent). You'll find a lot in here and maybe something you could help us with.
* **Next** What we want to work on next! Picking something to solve here would be greatly appreciated!!
* **In Progress** Things we are currently working on, come help us! The person assigned to each issue is the one in charge and who you can ask any question.
* **Done** Solved issues (sorted by closed date). Here you can check what we've been up to in the past.

If you want to have a view of where all of this is going in the long run, check out our [Roadmap issue](https://github.com/bionode/bionode/issues/35), where we discuss our vision.

## How to submit changes

Each bionode tool and library has its own repository (like a folder).
Once you've identified one of the issues above that you feel you can contribute to, you're ready to make a change to the repository of that issue! However, it's always a good idea to [talk to us first](#communication-channels). Specially if you intend to take on something big, just to make sure we're on the same track. :wink:

1. **[Fork](https://help.github.com/articles/fork-a-repo/) the repository** that the issue belongs to. This makes your own version of the tool/library that you can edit and use. If you were invited to the [Bionode organisation](https://github.com/orgs/bionode/people) on GitHub, you can just `git clone` the repo and use a `git branch` instead of `forking`.
2. **[Make your changes](https://guides.github.com/activities/forking/#making-changes)**! You can do this in the GitHub interface on your own local machine. Once you're happy with your changes...
3. **Submit a [pull request](https://help.github.com/articles/proposing-changes-to-a-project-with-pull-requests/)**. This opens a discussion around your project and lets the project lead know you are proposing changes.

First time contributing to open source? Check out this *free* series, [How to Contribute to an Open Source Project on GitHub](https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github).

## How to report bugs

Any general Bionode bug or question should be reported on the issue tracker of [bionode/bionode](https://github.com/bionode/bionode/issues). Anything that is specific to one of the tools, e.g. `bionode-ncbi`, should be reported under [that tool issue tracker](https://github.com/bionode/bionode-ncbi).

## Communication channels

Don't be shy! Come talk to us :smiley:

* **Email** [mail@bionode.io](mailto:mail@bionode.io)
* **Chat room** [http://gitter.im/bionode/bionode](http://gitter.im/bionode/bionode)
* **IRC** #bionode on Freenode
* **Twitter** [@bionode](http://twitter.com/@bionode)

## Node.JS specific commands
If you're new to Node.JS we highly recommend checking the [NodeSchool workshop](https://nodeschool.io/#workshopper-list) that you can install and run in your command line. Example:

```bash
npm install -g learnyounode
learnyounode
```

To install a local version of a bionode tool that you are modifying (e.g. bionode-ncbi):

```bash
git clone git@github.com:bionode/bionode-ncbi.git
cd bionode-ncbi
npm install # Install all dependencies defined in the package.json file
npm link # Setup bionode-ncbi in your PATH to point to this local version
```

You can now modify the code in the `bionode-ncbi` folder and test the effect of those changes when you run the `bionode-ncbi` command in your terminal.

To run a bionode tool suite of tests and check their code coverage, you can do:

```bash
npm test
npm run coverage
```

To rebuild and minify a bionode module for the browser (if supported) do:

```bash
npm run build-browser
```

To rebuild the documentation using the comments in the code do:

```sh
npm run build-docs
```

# Style guide
We currently recommend using the [JavaScript Standard Style](https://github.com/feross/standard) to check your code. You can run it in the folder you're working (see below) and install it as an extension for your text editor (e.g. [Atom](https://atom.io/packages/linter-js-standard) or [Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=chenxsan.vscode-standardjs)).

```bash
npm install -g standard
standard
```

# Testing
We use [tape](https://github.com/substack/tape) with [tape-nock](https://github.com/Flet/tape-nock) for testing. Code coverage is checked with [istanbul](https://github.com/gotwarlost/istanbul).
104 changes: 42 additions & 62 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,33 +5,48 @@
<br/>
<a href="http://bionode.io/">bionode.io</a>
</p>


# bionode-bwa

> A Node.js wrapper for the Burrow-Wheeler Aligner (BWA).
[![NPM](https://nodei.co/npm/bionode-bwa.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/bionode-bwa/)
[![npm](https://img.shields.io/npm/v/bionode-bwa.svg?style=flat-square)](http://npmjs.org/package/bionode-bwa)[![Build Status][travis-image]][travis-url]
[![Travis](https://img.shields.io/travis/bionode/bionode-bwa.svg?style=flat-square)](https://travis-ci.org/bionode/bionode-bwa)
[![Coveralls](https://img.shields.io/coveralls/bionode/bionode-bwa.svg?style=flat-square)](http://coveralls.io/r/bionode/bionode-bwa)
[![Dependencies](http://img.shields.io/david/bionode/bionode-bwa.svg?style=flat-square)](http://david-dm.org/bionode/bionode-bwa)
[![npm](https://img.shields.io/npm/dt/bionode-bwa.svg?style=flat-square)](https://www.npmjs.com/package/bionode-bwa)
[![Gitter](https://img.shields.io/gitter/room/nwjs/nw.js.svg?style=flat-square)](https://gitter.im/bionode/bionode-bwa)

[![NPM version][npm-image]][npm-url]
[![Build Status][travis-image]][travis-url]
[![Coveralls Status][coveralls-image]][coveralls-url]
[![Dependency Status][depstat-image]][depstat-url]
[![Standard style][js-standard-style-image]][js-standard-style-url]
[![Gitter chat][gitter-image]][gitter-url]
[![DOI][doi-image]][doi-url]
[![Stories in Ready at waffle.io][waffle-image]][waffle-url]

## Install

Install
-------
You need to install the latest Node.JS first, please check [nodejs.org](http://nodejs.org) or do the following:

Install bionode-bwa with [npm](http://npmjs.org/bionode-bwa):
```bash
# Ubuntu
sudo apt-get install npm
# Mac
brew install node
# Both
npm install -g n
n stable
```

```sh
$ npm install bionode-bwa
To use `bionode-bwa` as a command line tool, you can install it globally with `-g`.

```bash
npm install bionode-bwa -g
```
To use it as a command line tool, you can install it globally by adding ```-g``` .

Usage
-----
Or, if you want to use it as a JavaScript library, you need to install it in your local project folder inside the `node_modules` directory by doing the same command **without** `-g`.

```bash
npm i bionode-bwa # 'i' can be used as shorcut to 'install'
```


## Usage

If you're using bionode-bwa with Node.js, you can require the module:

Expand All @@ -58,60 +73,25 @@ stream.write(obj)
Please read the [documentation](http://rawgit.com/bionode/bionode-bwa/master/docs/bionode-bwa.html) for the methods exposed by bionode-bwa.
Check [BWA's documentation](http://bio-bwa.sourceforge.net/bwa.shtml) for the arguments that can be passed.


### Command line examples

```sh
$ bionode-bwa reference.fasta.gz reads.fastq.gz --alignment out.sam
$ echo '{"reference": "ref.fasta.gz", "reads": "[p1.fq, p2.fq]"}' | bionode-bwa -
```

Contributing
------------

To contribute, clone this repo locally and commit your code on a separate branch.
## Contributing

Please write unit tests for your code, and check that everything works by running the following before opening a pull-request:
We welcome all kinds of contributions at all levels of experience, please read the [CONTRIBUTING.md](CONTRIBUTING.md) to get started!

```sh
$ npm test
```

Please also check for code coverage:
## Communication channels

```sh
$ npm run coverage
```

To rebuild the documentation using the comments in the code:
Don't be shy! Come talk to us :smiley:

```sh
$ npm run build-docs
```
Check the [issues](http://waffle.io/bionode/bionode-bwa) for ways to contribute.

Contacts
--------
Bruno Vieira <[mail@bmpvieira.com](mailto:mail@bmpvieira.com)> [@bmpvieira](//twitter.com/bmpvieira)
For BWA support contact [Heng Li](https://github.com/lh3/bwa)

License
-------

bionode-bwa is licensed under the [MIT](https://raw.github.com/bionode/bionode/master/LICENSE) license.
Check [ChooseALicense.com](http://choosealicense.com/licenses/mit) for details.

[npm-url]: http://npmjs.org/package/bionode-bwa
[npm-image]: http://img.shields.io/npm/v/bionode-bwa.svg?style=flat-square
[travis-url]: http:////travis-ci.org/bionode/bionode-bwa
[travis-image]: http://img.shields.io/travis/bionode/bionode-bwa.svg?style=flat-square
[coveralls-url]: http:////coveralls.io/r/bionode/bionode-bwa
[coveralls-image]: http://img.shields.io/coveralls/bionode/bionode-bwa.svg?style=flat-square
[depstat-url]: http://david-dm.org/bionode/bionode-bwa
[depstat-image]: http://img.shields.io/david/bionode/bionode-bwa.svg?style=flat-square
[js-standard-style-url]: https://github.com/feross/standard
[js-standard-style-image]: https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square
[gitter-image]: http://img.shields.io/badge/gitter-bionode/bionode--bwa-brightgreen.svg?style=flat-square
[gitter-url]: https://gitter.im/bionode/bionode-bwa
[waffle-image]: https://badge.waffle.io/bionode/bionode-bwa.png?label=ready&title=issues%20ready
[waffle-url]: https://waffle.io/bionode/bionode-bwa
[doi-url]: http://dx.doi.org/10.5281/zenodo.11487
[doi-image]: http://img.shields.io/badge/doi-10.5281/zenodo.11487-blue.svg?style=flat-square
* **Email** [mail@bionode.io](mailto:mail@bionode.io)
* **Chat room** [http://gitter.im/bionode/bionode](http://gitter.im/bionode/bionode)
* **IRC** #bionode on Freenode
* **Twitter** [@bionode](http://twitter.com/@bionode)

0 comments on commit 616938b

Please sign in to comment.