A microkernel for modular javascript, a toolchain for modern front-end, a micro-framework for growable WebApp.


  • A tiny, pure, event-based model wrapper for the MVC or MDV (Model-driven Views) pattern.
  • It is far thinner than Backbone. None of View, Controller or Router is involved.
  • Strict data hiding but straightforward way to use.
  • Provides minimal built-in APIs but supports all external and conventional methods to access the model.
  • Model can be nested and supports bubbling events.

In NodeJS

npm install nerv

In browser

AMD and OzJS

Get the code

Add to your project as new dependency

Or download directly from Github



API and usage

var nerv = require('nerv');


var papercover = nerv();
var hardcover = nerv({
    isHard: true
var pageModel = nerv.model({
    init: function(){...},
    defaults: {
        text: '',
        number: 0
    mark: function(){...}
var page = pageModel({ number: 1 });
var page2 = pageModel({ number: 2 });


var book = nerv([]);
var bookB = nerv.collection({
    selectPage: function(number){...}

More References

See OzJS Project Homepage

Release History

See OzJS Release History


Copyright (c) 2010 - 2013 dexteryy
Licensed under the MIT license.