PHPackages                             webmodules/rivets - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. webmodules/rivets

ActiveLibrary[API Development](/categories/api)

webmodules/rivets
=================

Rivets.js is a lightweight data binding and templating system that facilitates building data-driven views.

0.8.2(10y ago)02762MITJavaScript

Since Dec 3Pushed 10y ago7 watchersCompare

[ Source](https://github.com/webmodule/rivets)[ Packagist](https://packagist.org/packages/webmodules/rivets)[ Docs](http://rivetsjs.com)[ RSS](/packages/webmodules-rivets/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (4)Used By (2)

Rivets.js
=========

[](#rivetsjs)

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
-----

[](#usage)

```

  { auction.product.name }
  Current bid: { auction.currentBid | money }

    Hurry up! There is { auction.timeLeft | time } left.

```

```
rivets.bind($('#auction'), {auction: auction})
```

Getting Started and Documentation
---------------------------------

[](#getting-started-and-documentation)

Documentation is available on the [homepage](http://rivetsjs.com). Learn by reading the [Guide](http://rivetsjs.com/docs/guide/) and refer to the [Binder Reference](http://rivetsjs.com/docs/reference/) to see what binders are available to you out-of-the-box.

Building and Testing
--------------------

[](#building-and-testing)

First install any development dependencies.

```
$ npm install

```

#### Building

[](#building)

Rivets.js uses [gulp](http://gulpjs.com/) as it's build tool. Run the following task to compile + minify the source into `dist/`.

```
$ gulp build

```

#### Testing

[](#testing)

Rivets.js uses [mocha](http://visionmedia.github.io/mocha/) as it's testing framework, alongside [should](https://github.com/visionmedia/should.js/) for expectations and [sinon](http://sinonjs.org/) for spies, stubs and mocks. Run the following to run the full test suite.

```
$ npm test

```

Contributing
------------

[](#contributing)

#### Bug Reporting

[](#bug-reporting)

1. Ensure the bug can be reproduced on the latest master.
2. Open an issue on GitHub and include an isolated [JSFiddle](http://jsfiddle.net/) demonstration of the bug. The more information you provide, the easier it will be to validate and fix.

#### Pull Requests

[](#pull-requests)

1. Fork the repository and create a topic branch.
2. Make sure not to commit any changes under `dist/` as they will surely cause conflicts for others later. Files under `dist/` are only committed when a new build is released.
3. Include tests that cover any changes or additions that you've made.
4. 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).

###  Health Score

29

—

LowBetter than 59% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community28

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 87% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~119 days

Total

3

Last Release

3944d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c5b5b41a27c22c02fd7a9e66995586a7bc4851492eba68aa9b669faed3b9ccb9?d=identicon)[jqutils](/maintainers/jqutils)

![](https://avatars.githubusercontent.com/u/7917997?v=4)[webmodules](/maintainers/webmodules)[@webmodules](https://github.com/webmodules)

---

Top Contributors

[![mikeric](https://avatars.githubusercontent.com/u/36068?v=4)](https://github.com/mikeric "mikeric (569 commits)")[![ansman](https://avatars.githubusercontent.com/u/102883?v=4)](https://github.com/ansman "ansman (14 commits)")[![tcz](https://avatars.githubusercontent.com/u/160008?v=4)](https://github.com/tcz "tcz (6 commits)")[![pgib](https://avatars.githubusercontent.com/u/13967?v=4)](https://github.com/pgib "pgib (6 commits)")[![der-On](https://avatars.githubusercontent.com/u/359399?v=4)](https://github.com/der-On "der-On (6 commits)")[![paulj](https://avatars.githubusercontent.com/u/52834?v=4)](https://github.com/paulj "paulj (5 commits)")[![lnt](https://avatars.githubusercontent.com/u/5462166?v=4)](https://github.com/lnt "lnt (5 commits)")[![kayhadrin](https://avatars.githubusercontent.com/u/182644?v=4)](https://github.com/kayhadrin "kayhadrin (4 commits)")[![AWinterman](https://avatars.githubusercontent.com/u/524923?v=4)](https://github.com/AWinterman "AWinterman (4 commits)")[![zmbush](https://avatars.githubusercontent.com/u/1189378?v=4)](https://github.com/zmbush "zmbush (3 commits)")[![terrancesnyder](https://avatars.githubusercontent.com/u/379950?v=4)](https://github.com/terrancesnyder "terrancesnyder (3 commits)")[![vvo](https://avatars.githubusercontent.com/u/123822?v=4)](https://github.com/vvo "vvo (3 commits)")[![nickjs](https://avatars.githubusercontent.com/u/22133?v=4)](https://github.com/nickjs "nickjs (3 commits)")[![davidcl64](https://avatars.githubusercontent.com/u/928988?v=4)](https://github.com/davidcl64 "davidcl64 (2 commits)")[![chadhietala](https://avatars.githubusercontent.com/u/183799?v=4)](https://github.com/chadhietala "chadhietala (2 commits)")[![atsar](https://avatars.githubusercontent.com/u/8017218?v=4)](https://github.com/atsar "atsar (2 commits)")[![zowens](https://avatars.githubusercontent.com/u/187426?v=4)](https://github.com/zowens "zowens (2 commits)")[![xori](https://avatars.githubusercontent.com/u/1091220?v=4)](https://github.com/xori "xori (2 commits)")[![feelepxyz](https://avatars.githubusercontent.com/u/20165?v=4)](https://github.com/feelepxyz "feelepxyz (2 commits)")[![jonasi](https://avatars.githubusercontent.com/u/379851?v=4)](https://github.com/jonasi "jonasi (1 commits)")

---

Tags

apirudra

### Embed Badge

![Health badge](/badges/webmodules-rivets/health.svg)

```
[![Health](https://phpackages.com/badges/webmodules-rivets/health.svg)](https://phpackages.com/packages/webmodules-rivets)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
