/chatio

Real-time apps using Node.js & Socket.io

Primary LanguageCSSMIT LicenseMIT

chatio

Chat.IO app using node.js and socket.io

Libraries used

[ Node.JS / npm ]

[ Socket.IO :: ExpressJS :: node-uuid :: underscore :: ejs ]

Functionality

  1. People are able to join the chat server after entering their names
  2. Usernames are unique - if a username is taken, a new suggestion is generated
  3. People can setup a room. Room names are unique. One person can create on room and join one room
  4. Users have to join a room to chat, except for the Private Message feature.
  5. 'Private Messages' can use private messages between two users
  6. Users can leave a room and/or disconnect from the server anytime
  7. People joining the room will see the past 10 messages (chat history).
  8. People will see an 'is typing' message when someone is typing a message.

Setup and configuration

Make sure that you update index.js:

server.listen(app.get('port'), function(){
  console.log('Express server listening on port ' + app.get('port'));
});

and add your own IP address/hostname if required, i.e.:

server.listen(app.get('port'), "192.168.1.6", function(){
  console.log('Express server listening on port ' + app.get('port'));
});

(the port is defined in the app.set('port', process.env.PORT || 3000); section.)

Please also update public/js/client.js: var socket = io.connect("192.168.1.6:3000"); with the right IP address/hostname.

Install

open the terminal and type:

$ npm install && bower install

and to launch run

$ npm start

Example

Now Visit Chat.IO DEMO