Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

bazooka Build Status

Simple tool for declarative binding applications to HTML nodes.

Installation

$ npm install bazooka

Browser Support

Bazooka uses MutationObserver to watch for DOM updates. If you want to use Baz.watch() and need to support browsers without MutationObserver, you'll need any MutationObserver polyfill (we recommend this one)

Also, Bazooka can initiate components asynchriously (when component's node comes into viewport, via data-baz-async="viewport" HTML attribute). For that, Bazooka uses IntersectionObserver. In browsers without IntersectionObserver support, falls back to the equivalent of setTimeout(bazFunc, 1, node)

Examples

To view the examples, clone the bazooka repo, install the dependencies and compile examples:

$ git clone git://github.com/seedofjoy/bazooka.git
$ cd bazooka
$ npm install
$ npm run examples

Then run whichever example you want by opening index.html in /examples/ subdirectories:

$ cd examples
  • complex — universal component to work with and without bazooka
  • react-basic — bazooka + react
  • gifflix — bazooka + frp (via kefir.js)

Docs

Changelog

Tests

To run the test suite, first install the dependencies, then run npm test:

$ npm install
$ npm test

Lint

Bazooka uses prettier linter. To conform with it, just run before creating a commit:

$ npm run fmt

License

MIT

You can’t perform that action at this time.