Schmooze
Note: I wrote this code like a million years ago
An real time multi-platform, multi-channel web app for online Discussion and Learning. The project is aimed to conduct the online group sessions for students of the National Institute of Technology, Kurukshetra.
The project have:
Group chat and discussion
Private chat
File sharing
Create own channel for discussion
No login required, just give a nickname to enter into the discussion
Several commands and rules for chat and discussion such as: /join % for joining a room etc.
User can join different groups and be part of the discussion
Different color schemes for the chat and logs.
Download the chat ,logs and discussion file of a channel (Incase the user could not attend the dicussion)
Creating a robot named "Aron" for the project to automate the thing. Things to add:
Using webRTC for extending the functionality of the project such as Face to Face Chat and sessions.
and lots more to decide :)
Socket.io for socket connections Technologies I have used:
Redis Server for session storage and managment.
Node.js And Express for the server side
Simple HTML5 and CSS3 for the front-end.
MongoDB and Mongoose for Database Management.
Schmooze Setup
Fork/Clone the project. Step 1
Install Redis on your computer. Step 2
Install and setup MongoDB on the computer and ensure to that it runs successfully. Step 3
Ensure you have latest version of node and npm installed. Step 4
Check for node version by using node --version in your terminal (v >= 4.3.0).
Create a config.js file in the project directory. Step 5
Add the following content in the file :
var params = {
'sessionSecret':'choose one',
'sessionCookieKey':choose one'
};
module.exports = params;
cd into the project directory. Step 6
Run "sudo npm install" to install all the node dependencies required by the project. Run node bin/www to run the project.
Feel free to contribute to the project. Contribute :)
Create an issue if you find anything wrong with the project.