A Real-Time Chat Application built using Node.js, Express, Mongoose, Socket.io, Passport, & Redis. The configurations on production will be assigned from Environment Variables on Heroku, while the development configurations reside inside app/config/config.json file. You need to create a database on MongoLab, then create a database user, get the MongoDB URI, and assign it to dbURI. You need to register a new application on both Facebook and Twitter to get your tokens by which users can grant access to your application, and log in using their social accounts. The session needs a random string to make sure the session id in the browser is random. That random string is used to encrypt the session id in the browser, Why? To prevent session id guessing. Each user has a username, password, social Id, and picture. If the user is logged in via username and password, then the social Id has to be null, and the if logged in via a social account, then the password will be null.

Features

  • Uses Express as the application Framework
  • Manages Sessions using express-session package
  • Authenticates via username and password using Passport
  • Passwords are hashed using bcrypt-nodejs package
  • Social Authentication via Facebook and Twitter using Passport
  • Real-time communication between a client and a server using Socket.io

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow chat.io

chat.io Web Site

Other Useful Business Software
8 Monitoring Tools in One APM. Install in 5 Minutes. Icon
8 Monitoring Tools in One APM. Install in 5 Minutes.

Errors, performance, logs, uptime, hosts, anomalies, dashboards, and check-ins. One interface.

AppSignal works out of the box for Ruby, Elixir, Node.js, Python, and more. 30-day free trial, no credit card required.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of chat.io!

Additional Project Details

Programming Language

JavaScript

Related Categories

JavaScript Frameworks, JavaScript Web Development Software

Registered

2022-10-31