Skip to content
/ chatter Public

A Rails server that uses websockets to create and maintain public and private chat rooms. Authentication using Devise.

Notifications You must be signed in to change notification settings

Maimer/chatter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CHATTER

Created by Nicholas Lee

Website: http://sockets-chat.herokuapp.com

Chatter is a real-time chat room application built in Rails 4 and Ruby 2. The application communication channels are implemented through the use of WebSockets, which allow for a full-duplex single socket connection over which messages can be sent between client and server. Users are authenticated through the use of Devise and the application allows for user created public and private channels as well as other features including inline images, admin commands, emojis, and markdown support.

Gems

WebSocket-Rails: Used to create the websocket server through the use of event machine and to process all incoming and outgoing websocket connections.

FastImage: Used to find the size of an image that is not stored locally in order to dynamically generate HTML image tags.

RedCarpet: Used to parse any markdown that is posted through incoming user messages.

Gemoji: Used to provide emoji support in chat.

Devise: Used as the user authentication layer for the application.

Chat Commands

/help (Lists all possible chat commands)

/join <channel> (Creates or joins a new channel)

/leave <channel> (Leaves an existing channel)

/channels (Lists all current public channels with users)

/admin <text> (Sends the text to all channels as an Admin message)

/roll <number> (Produces a random number between 1 and give number)

Chatter Images:

Example 1

Example 2

About

A Rails server that uses websockets to create and maintain public and private chat rooms. Authentication using Devise.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published