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
Go From AI Idea to AI App Fast Icon
Go From AI Idea to AI App Fast

One platform to build, fine-tune, and deploy ML models. No MLOps team required.

Access Gemini 3 and 200+ models. Build chatbots, agents, or custom models with built-in monitoring and scaling.
Try 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