incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mirko Kiefer <>
Subject Re: LivelyCouch - a framework around CouchDB and Node.js
Date Tue, 07 Dec 2010 21:23:28 GMT
Hi Pete,
if you haven't spent much time with Node.js yet it might indeed be not 
obvious to see the "awesomeness" of LivelyCouch :)
Besides the advantage of being able to store and distribute your entire 
application backend in CouchDB I see the event system as the most 
exciting thing about LivelyCouch.
The idea is that you split your application in small modules called 
Workers, that have a single purpose (like in the tutorial an e-mail 
Worker or database changelistener).
Communication between Workers can only happen asynchronously by one 
Worker emitting an Event and another Worker subscribing to it.
This is just like in Node.js with the difference that Events in 
LivelyCouch are HTTP messages and therefore work across multiple 
processes or even physical machines.
Once you built all the Workers you need for your application, you can 
very flexibly wire them together with Event subscriptions without having 
to change the actual source code of your application.
Lets take the example in our tutorial where we have a Worker that emits 
an Event every time a document gets added to an "inbox" database 
In the tutorial we added a subscription to that Event which triggered a 
Worker who is responsible for sending out e-mail notifications.
We could very easily add a new subscription to the same Event that 
triggers another Worker who could update the new inbox document with a 
property saying "user_notified": true.
To implement this new "feature" we don't have to modify any of our 
existing code - we simply write this new Worker and bind it to the 
existing Event.

This may still be a bit too abstract - I will work on a more hands-on 
tutorial with a realistic example.
Maybe you want to have a look at Mikeal's talk in Berlin where he 
describes a scenario where LivelyCouch would come in very handy:


On 12/7/10 9:40 PM, Peter Nolan wrote:
> It's good to see that you're coming along on your project.  I'm really glad
> that you're writing apis and tutorials as you progress (more people should
> follow your lead) please please please keep this up :p
> However, I am unsure of the true 'awesomeness' of your application.  I have
> only begun to read about your project so it might not just be 'obvious' to
> me.  (i still don't get why node.js is so great)   Perhaps if you could
> write simple applications that could serve a dual purpose - a simple guided
> walk through and an example of the awesomeness should achieve this.
> Either way, I'm glad to know you're coming along, and look forward to
> reading about your progress.
> -Pete
> On Tue, Dec 7, 2010 at 12:58 PM, Mikeal Rogers<>wrote:
>> Sounds great, I'm excited to see how it all turns out.

View raw message