NowJS is an remote procedure call module for Node.js designed to make real time Web apps easier by making it easy for the client and server to pass data back and forth using JavaScript.

According to its website it takes care of XHR, routing and serialization/parsing so that you don't have to deal with AJAX. It's built using socket.io and node-proxy libraries and portions of sesame.

One example application is a real-time chat room written in 12 lines of code.

Here's how it works, according to the website:

  • NowJS creates a magic namespace "now", accessible by server and client
  • Functions and variables added to now are automatically synced, in real-time
  • Call client functions from the server and server functions from client

DNode is another RPC system for Node.js. "NowJS is a higher-level interface than DNode," our own Pete Warden explains. "It offers an abstraction layer to make calling remote functions very simple without worrying about ports or sockets."

You can find NowJS on Github here.