walosha / chat

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Node.js Login Chat App

THIS IS A WORK IN PROGRESS, FEATURES MAY BE MISSING.

What is this project?

A chatroom website written in Node.js using Socket.IO for communication between clients. Express.js and the Node.js implementation of SQLite are used for a login system allowing users to register, login, edit, and delete an account at any time. Passwords are hashed using bcrypt so they are stored securely in the database.

Features

🟒 = Fully working | 🟑 = Partly working/in progress | 🟠 = To be added | πŸ”΄ = Broken

  • Database 🟒
  • Sign Up 🟒
  • Sign In 🟒
  • Session management system 🟒
  • Homepage 🟒
  • Edit account 🟒
  • Delete account 🟒
  • Remember me 🟒
  • Two-step verification 🟠
  • Mobile support 🟒
  • List of connected users 🟒
  • Message displayed on joining/leaving chat 🟒
  • Sending and receiving messages 🟒
  • Previous chat history displayed on joining 🟒
  • 250 character limit on messages 🟒
  • Administrator accounts with ban and delete powers 🟠
  • Different chatrooms 🟠
  • Changing username updates it in chat logs 🟠
  • Deleting account updates it to "DELETED" in chat logs 🟠
  • Session renewal on a regular basis 🟠

Installation instructions

Dependencies

  • Node.js v17 or newer
  • NPM package manager
  • Git

Terminal/command prompt

git clone https://github.com/chasc0des/nodejs-login-chat-app.git
cd nodejs-login-chat-app
npm install .
npm start

By default, the program can be accessed on http://localhost:8080 or from another machine on your network, http://<YOUR IP ADDRESS>:8080.

Screenshots

Sign In form

Sign Up form

Homepage

Edit account page

Delete account page

Error 404 not found

About


Languages

Language:JavaScript 79.7%Language:CSS 10.6%Language:HTML 9.7%