Ractive.js - Next-generation DOM manipulation
What is Ractive.js?
- data-binding, with a beautiful declarative syntax
- event handling that doesn't make you tear your hair out
- flexible and performant animations and transitions
...among many others. It takes a radically different approach to DOM manipulation - one that saves both you and the browser unnecessary work.
To build the project locally, you'll need to have Grunt installed. Clone the repo, navigate to the folder, then do
$ npm install
to install all the development dependencies (which aren't included in the repo itself). Then do
to build the project from source, lint it, run the tests and minify the library. If all of those steps succeed, files will be created in the
Other grunt commands available:
# Watch all source files, and rebuild when they change. This will # only concatenate the files (it won't lint/test/minify) to the # tmp folder $ grunt watch # Concatenate the files to the tmp folder $ grunt concat # Lint the concatenated code $ grunt jshint # Run tests on the concatenated code $ grunt qunit # Release a new version of the library to the release folder # (reads version number from package.json) $ grunt release
If you have feature suggestions or bug reports, please raise an issue on GitHub after checking it's not a duplicate.
Pull requests are always welcome! In lieu of a formal styleguide, please try to follow the existing conventions.
Tested successfully in IE8+ and all modern browsers. If your experience differs please let me know! (For legacy browser support, use the builds with
legacy in the filename - these include polyfills for
Array.prototype.forEach and other ES5 features used by Ractive.)
Copyright (c) 2012-13 Rich Harris. Released under an MIT license.