# bangers-and-hash

> A URI generator that will generate a url with a hashbang section.

Latest version **0.0.6** (published 2015-02-19) · ISC license · 0 weekly downloads

## Install

```sh
npm install bangers-and-hash
pnpm add bangers-and-hash
yarn add bangers-and-hash
bun add bangers-and-hash
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.6 |
| Published | 2015-02-19 |
| First published | 2015-02-04 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | jhare |

## Links

- npm: https://www.npmjs.com/package/bangers-and-hash
- npm.io page: https://npm.io/package/bangers-and-hash

## Recent versions

- 0.0.6 (latest) — 2015-02-19
- 0.0.5 — 2015-02-10
- 0.0.4 — 2015-02-05
- 0.0.2 — 2015-02-05
- 0.0.1 — 2015-02-04

## README

# bangers-and-hash
URL generator that supports hashbangs

[![npm version](https://badge.fury.io/js/bangers-and-hash.svg)](http://badge.fury.io/js/bangers-and-hash)
[![Build Status](https://travis-ci.org/TeamDeepcrow/bangers-and-hash.svg?branch=master)](https://travis-ci.org/TeamDeepcrow/bangers-and-hash)

Written by [Joe Hare](http://joehare.org) and [Chris Gibson](http://github.com/chris-gibson)

![yum](/doc/bangers-and-mash.jpg?raw=true)

##Installation##

```
> npm install --save bangers-and-hash
```

##Usage##
```js
var Banger = require('bangers-and-hash');

var banger = new Banger();
banger
  .protocol('http')
  .host('yourserver')
  .port('8080') // your port
  .resources(['path', 'to', 'resource']) // server side resource path
  .hashBang()
  .hashResources(['client', 'side', 'resource']) // client side resource path
  .param('queryparam1', 'and its value')
  .param('queryparam2', 'anothervalue42');

  var url = banger.url();
```
* **Note**: These methods can all be called in any order, as long as `url()` is called last.
* This example produces `http://yourserver:8080/path/to/resource/#/client/side/resource?queryparam1=and%20its%20value&queryparam2=anothervalue42`

##Gulp Targets ##
* `gulp test` - run the mocha test suite
* `gulp watch` - start a watcher for the library and tests. Unit tests are re-ran with each update to keep a solid feedback loop for maintainers.

##Contributing##
Right now this is all this module supports. It was written for a specific
private project but it will be extended over time.

Feel free to send us a pull request! Keep in mind

* Most pull requests need to be related to an issue.
  * If your issue number is 42 and related to say, "support AMD module" name it `issue42-support-amd-module`.
  * Just ensure the text tokens in the name are brief but somewhat descriptive.
  * If there's not an issue for what you want to change please create one!
* Common style guidelines
  * 2 space indentation. No tabs please
  * Avoid anonymous functions. Try to always give them a name so there's a readable stack trace for errors.
  * We'll review your branch beforehand and address any changes.
* Your feature/fix must have accompanying unit tests.
  * We generally work TDD style on this project.
  * All existing tests passing in case they became obsolete and removed after a conversation about it.
* In commit messages use the command/imperative form - "Fix an elusive bug!" rather than "Fixes an elusive bug!"
* Commit message top lines need to be <= 73 characters. If you need to say more, insert blank line and then you lengthy explanation. More info is good, there's just good and bad places for it.
* Ask questions! These rules are there to keep the project clear, not shame new contributors. We'll help you get everything lined out.
* In fact, there's a `question` label for issues. Use it to ask us any old thing and it'll be a nice way to asynchronously record troubleshooting and disambiguations.

---
_Source: https://npm.io/package/bangers-and-hash · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
