Is there a standard/elegant way of achieving Firebase-like reactive objects without Firebase? : <p>The thing i like about realtime databases like Firebase is their push features. for example vuefire makes it incredibly simple to have self-updating objects without stringing up hundreds of socket listeners and callbacks.</p>

<p>This is an example:</p>

<pre><code>data(){
  return {
    books: []
  }
},

created(){
  axios.get('/books', (books) =&gt; {
    this.books = books
  })
}
</code></pre>

<p>In order to add db reactivity to this, I need at least 3 events “book-created”, “book-updated”, “book-removed”.</p>

<pre><code>Pusher.on('book-created', (book) {
  this.books.push(book)
})
Pusher.on('book-updated', (book) {
  let b = _.find(this.books, {id: book.id})

  if(b){
   _.extend(b, book)
  } 
})
etc..
</code></pre>

<p>It gets quite hairy when you have many models and many views, some views have a different set of books so I can’t just have one standard books vuex variable. Is there a sensible/fast way to approach this?</p>

<p>I can certainly abstract the event sending on my backend so all my models push events automatically. but the front-end is where i’m confused.</p>
