jstclair/ko-auditing
Allows extending a KO observable to raise a true "changed" event (capturing the previous value, and only raising the event when a value is changed from the previously-capture value). Used this to capture changes on the view model that could be logged, stored (locally or remotely), and re-played.
JavaScript