<commit_before>Raphael.Knockout
================

KnockoutJS integration in RaphaelJS.

## Getting Started

Add libraries to your HTML Page

```html
<script type="text/javascript" src="path/to/knockout.js"></script>
<script type="text/javascript" src="path/to/raphael.js"></script>
<script type="text/javascript" src="path/to/raphael.knockout.js"></script>
```

Create your Knockout ViewModel

```javascript

var vm = {
	x: ko.observable(0),
	y: ko.observable(0),
	width: ko.observable(150),
	height: ko.observable(150,
	fill: ko.observable("#f00")
};

```
Create your Raphael paper, elements, ...

```javascript

var paper = Raphael(0, 0, 350, 350);
var rect = paper.rect();
rect.bind({
	x: vm.x,
	y: vm.y,
	width: vm.width,
	height: vm.height,
	fill: vm.fill
});

// -- or --
rect.bind("x", vm.x);
rect.bind("y", vm.y);
//...

```

Let the magic work !<commit_msg>Added a working sample on jsbin, updated README<commit_after>Raphael.Knockout
================

KnockoutJS integration in RaphaelJS.

## Getting Started

Add libraries to your HTML Page

```html
<script type="text/javascript" src="path/to/knockout.js"></script>
<script type="text/javascript" src="path/to/raphael.js"></script>
<script type="text/javascript" src="path/to/raphael.knockout.js"></script>
```

Create your Knockout ViewModel

```javascript

var vm = {
	x: ko.observable(0),
	y: ko.observable(0),
	width: ko.observable(150),
	height: ko.observable(150,
	fill: ko.observable("#f00")
};

```
Create your Raphael paper, elements, ...

```javascript

var paper = Raphael(0, 0, 350, 350);
var rect = paper.rect();
rect.bind({
	x: vm.x,
	y: vm.y,
	width: vm.width,
	height: vm.height,
	fill: vm.fill
});

// -- or --
rect.bind("x", vm.x);
rect.bind("y", vm.y);
//...

```

Let the magic work !

## Example

Working sample on [JsBin](http://jsbin.com/idowek/4).
{'fraction_non_alphanumeric': 0.20621931260229132, 'fraction_numerical': 0.020185488270594652, 'mean_word_length': 4.300578034682081, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3536601', 'n_tokens_mistral': 735, 'n_tokens_neox': 680, 'n_words': 162}