The simplemodel library lets you easily observe mutations to objects and changes to collections.

Find it on GitHub: sufianrhazi/simplemodel
Install it via: npm install @srhazi/simplemodel


I created simplemodel to be a similarly minimal library that enables observation of Models and Collections that make them nearly indistinguishable from plain old JavaScript objects and arrays.

I also wanted to use JavaScript language features that are typically unused by most libraries, which typically limit their language surface area to the subset of the language that was standardized prior to ES5. In particular, I don't find many libraries take advantage of Object.defineProperties (standardized in 2009), or Proxy (standardized in 2015).

In some respects, simplemodel is heavily inspired by Backbone. It is meant to be simple, minimal, flexible, and unsurprising.