Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
NowJS makes it easy to build real-time web apps using JavaScript
JavaScript

Merge pull request #193 from web-dev/patch-1

Fixed an error in the Express example code and corrected the formatting
latest commit 957e7ac7f8
@steveWang steveWang authored
Failed to load latest commit information.
bin
dist version bump to 0.8.0
doc update the doc
examples Retrieving room count in a better way (using Group count method inste…
lib nowjs.options.clientWrite was suppressing nowjs#connect. Amend this.
.gitmodules first commit
LICENSE Changelog updated. License added.
Makefile add minified now.js client lib and serve it + build process
changelog.md Update changelog to v0.8.0
package.json version bump to v0.8.1
readme.md Fixed an error in the Express example code and corrected the formatting

readme.md

Get NowJS http://www.nowjs.com/

NowJS makes realtime web apps really easy.

Go to Github or Download the master tgz

Install From npm

npm install now or npm install now -g to install globally

NowJS is a Node.js module. The client javascript (now.js) is served by the NowJS server.

NowJS uses the excellent socket.io and node-proxy libraries.

2 Step Setup

1. On the server

var httpServer = require('http').createServer(function(req, response){ /* Serve your static files */ })
httpServer.listen(8080);

var nowjs = require("now");
var everyone = nowjs.initialize(httpServer);

everyone.now.logStuff = function(msg){
    console.log(msg);
}

2. On the client


<script type="text/javascript" src="http://localhost:8080/nowjs/now.js"></script>

<script type="text/javascript">
  now.ready(function(){
    // "Hello World!" will print on server
    now.logStuff("Hello World!");
  });
</script>

FAQ

Q: Can I pass in a callback or closure, for example, if the remote function is asynchronous?

A: Yes. This is 100% supported

Q: How do I use NowJS with Express?

A: Very easily.

var app = express.createServer();
var server = app.listen(3000);
var everyone = require("now").initialize(server);

Q: How do I disable WebSockets or only use xhr-polling?

A: You can specifiy exactly which transports to use as an initialization options as follows:

var nowjs = require("now");
var everyone = nowjs.initialize(yourHttpServer, {socketio: {transports: ['xhr-polling', 'jsonp-polling']}});

Q: Error: " SyntaxError: Unexpected token *" / Can I statically host the now.js file?

A: On the client side, make sure you link to now.js like this

 <script src="http://myserver:myport/nowjs/now.js"></script>

You do not need to host the file /nowjs/now.js. It is automatically hosted by the NowJS using the http server you pass into the .initialize(...) in your server code. If you choose to host now.js yourself, you can, but do not use the version in github repo you MUST save the file at http://myserver:myport/nowjs/now.js and host that, because it is automatically configured for your server.

Further Reading

Now that you have NowJS, try the NowJS User Manual and Quick Chat Example

Have more questions? Please contact us: Email: team@nowjs.com

IRC: #nowjs on freenode

Twitter: @NowJSTeam

Something went wrong with that request. Please try again.