Clone this repo:
  1. 08d893c Bump dependencies and prepare for release by Mark Egli · 2 years, 6 months ago master 0.24.0 v0.24.0
  2. 577080b Restore files deleted in merge by Mark Egli · 2 years, 6 months ago
  3. 758f801 Merge pull request #108 from google/google by Nick Croll · 2 years, 6 months ago
  4. 0cecece Internal change by Mark Egli · 2 years, 6 months ago
  5. 78867c8 Integrate internal changes by Mark Egli · 2 years, 6 months ago

Build Status

Support for detecting and being notified when an object is mutated.

An observable is a way to be notified of a continuous stream of events over time.

Some suggested uses for this library:

  • Observe objects for changes, and log when a change occurs
  • Optimize for observable collections in your own APIs and libraries instead of diffing
  • Implement simple data-binding by listening to streams

You may want to look at the former TC39 proposal Observe.observe, which was deprecated.


There are two general ways to detect changes:

  • Listen to Observable.changes and be notified when an object changes
  • Use Differ.diff to determine changes between two objects