Object Namespace Manager (onm) An in-memory JSON data normalization framework for Node.js w/support for URI addressing, URI introspection, higher-order data modeling, property-level change monitoring... oh never mind...
JavaScript CoffeeScript
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
dist
src
test
.gitignore
Gruntfile.coffee
LICENSE
README.md
onm.js
package.json

README.md

Encapsule Project onm

Encapsule Project Object Namespace Manager (onm) library is a data-model-driven JavaScript data object/JSON factory and in-memory subsystem communication bus for building complex data-driven Node.js/HTML 5 client applications in JavaScript based on the the Model-Store-Observe-Feedback-Signal design pattern.

Package

The latest onm package is available via npm:

    npm install onm

See also: https://www.npmjs.org/package/onm

onm is distributed in CommonJS format for easiy use in node:

    var onm = requrie('onm');
    // onm blah blah blah...

onm is extremely useful in the client as well and is fully compatible. However, you will have to transform onm's CommonJS source for use in the browser using a build tool such as browserify.

I've been writing everything in CommonJS and using the grunt-browserify plug-in for Grunt to pack up everything I need for my HTML5 SPA (including onm), and it's been working well so far.

There are few related packages you might be interested in as well: onm-server-rest-routes, onm-client-rest-api, onmd-scdl...

Sources

Sources are available under MIT license on GitHub: Encapsule/onm

Documentation

onm's small API surface belies its power: Encapsule/onm/wiki