<commit_before># Swathe #
**Swathe - Powerful, Small, 2 Way Data Binding**

Swathe is a 2 way data binding library. It is extremely small and extremely powerful. Try it out and you will see for your self. Contributions suggestions welcome and appreciated! 2 Way data binding can be costly thus only elements with value properties are bi-directionally watched using the Input Event.

Browsers support any ES5 spec compliant, such as IE9+ and Safari 6+. Firefox, Chrome and Edge.


## Size ##
Approximately 670 bytes gzipped (1.35KB uncompressed).


## Performance ##
Performance seems to be pretty good. I am not sure how it compares to other frameworks though. Running Chrome with a single bi-directional element changing **25,000** divs simultaneously the UI lag is only slightly apparent. When using 50/50 div and bi-directional inputs **10,000** begins to have noticeable lag. Check out the example  directory and see for your self.


## Use ##
- Install `npm swathe`
- Chose either `swathe.js` or `swathe-next.js`
- If using `swathe-next.js` you will need to include the `proxy.min.js`
- Minify `swathe.js` or bundle `proxy.min.js` and `swathe-next.js` then Minify


## View Example ##
```HTML
<div data-s="style.background: color">Color Me!</div>
<input data-s="value: color" value="Color"/>
<div data-s="innerText: color">None</div>

<a href="#" data-s="href: i.am.nested">Link</a>
<input class="input" data-s="value: i.am.nested" value="Initial"/>
<div class="data" data-s="innerText: i.am.nested">None</div>
```

<commit_msg>added browser support inof<commit_after># Swathe #
**Swathe - Powerful, Small, 2 Way Data Binding**

Swathe is a 2 way data binding library. It is extremely small and extremely powerful. Try it out and you will see for your self. Contributions suggestions welcome and appreciated! 2 Way data binding can be costly thus only elements with value properties are bi-directionally watched using the Input Event.

**CAUTION this project/docs is still under the final stages of development. The API should be finalized soon**


## Size ##
Approximately 670 bytes gzipped (1.35KB uncompressed).


## Performance ##
Performance seems to be pretty good. I am not sure how it compares to other frameworks though. Running Chrome with a single bi-directional element changing **25,000** divs simultaneously the UI lag is only slightly apparent. When using 50/50 div and bi-directional inputs **10,000** begins to have noticeable lag. Check out the example  directory and see for your self.


## Browser Support ##
- IE 9+
- Edge
- Safari 6+
- Firefox
- Chrome


## TODO ##
- each render


## Use ##
- Install `npm swathe`
- Chose either `swathe.js` or `swathe-next.js`
- If using `swathe-next.js` you will need to include the `proxy.min.js`
- Minify `swathe.js` or bundle `proxy.min.js` and `swathe-next.js` then Minify


## View Example ##
```HTML
<div data-s="style.background: color">Color Me!</div>
<input data-s="value: color" value="Color"/>
<div data-s="innerText: color">None</div>

<a href="#" data-s="href: i.am.nested">Link</a>
<input class="input" data-s="value: i.am.nested" value="Initial"/>
<div class="data" data-s="innerText: i.am.nested">None</div>
```


{'fraction_non_alphanumeric': 0.11779448621553884, 'fraction_numerical': 0.015977443609022556, 'mean_word_length': 4.4027072758037225, 'pattern_counts': {'":': 0, '<': 23, '<?xml version=': 0, '>': 23, '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': '997704', 'n_tokens_mistral': 1025, 'n_tokens_neox': 928, 'n_words': 408}