webmodules / rivets
Rivets.js is a lightweight data binding and templating system that facilitates building data-driven views.
Installs: 272
Dependents: 3
Suggesters: 0
Security: 0
Stars: 0
Watchers: 8
Forks: 309
Language:JavaScript
Requires
- webmodules/sightglass: 0.2.4
This package is not auto-updated.
Last update: 2024-12-21 17:38:14 UTC
README
Rivets.js is a lightweight data binding and templating system that facilitates building data-driven views. It is agnostic about every aspect of a front-end MV(C|VM|P) stack, making it easy to introduce it into your current workflow or to use it as part of your own custom front-end stack comprised of other libraries.
Usage
<section id="auction"> <h3>{ auction.product.name }</h3> <p>Current bid: { auction.currentBid | money }</p> <aside rv-if="auction.timeLeft | lt 120"> Hurry up! There is { auction.timeLeft | time } left. </aside> </section>
rivets.bind($('#auction'), {auction: auction})
Getting Started and Documentation
Documentation is available on the homepage. Learn by reading the Guide and refer to the Binder Reference to see what binders are available to you out-of-the-box.
Building and Testing
First install any development dependencies.
$ npm install
Building
Rivets.js uses gulp as it's build tool. Run the following task to compile + minify the source into dist/
.
$ gulp build
Testing
Rivets.js uses mocha as it's testing framework, alongside should for expectations and sinon for spies, stubs and mocks. Run the following to run the full test suite.
$ npm test
Contributing
Bug Reporting
- Ensure the bug can be reproduced on the latest master.
- Open an issue on GitHub and include an isolated JSFiddle demonstration of the bug. The more information you provide, the easier it will be to validate and fix.
Pull Requests
- Fork the repository and create a topic branch.
- Make sure not to commit any changes under
dist/
as they will surely cause conflicts for others later. Files underdist/
are only committed when a new build is released. - Include tests that cover any changes or additions that you've made.
- Push your topic branch to your fork and submit a pull request. Include details about the changes as well as a reference to related issue(s).