Skip to content

About

A lightweight Discord-inspired chat application built with Node.js, Express, Socket.IO and PostgreSQL, featuring authentication, real-time messaging and server-side session management.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

Repository files navigation

Discord Lite

A lightweight Discord clone built to learn Node.js, Express, Socket.IO, and PostgreSQL.

Screenshots

login chat

Features and Security

  • Google OAuth2 Login: Passwordless auth handled on the server.
  • Real-time Messaging: WebSockets powered by Socket.IO.
  • Session Security: Session IDs stored in HttpOnly and SameSite cookies, reducing the risk of session theft through XSS.
  • Persistent Data: Message history saved in PostgreSQL.
  • API Protection: Rate limiting on auth endpoints to prevent spam.

️ Tech Stack

  • Server: Node.js, Express.js, Socket.IO, express-session
  • Database: PostgreSQL
  • Auth: Google Auth Library (google-auth-library)
  • Frontend: HTML, CSS, Vanilla JS

Requirement

Start


git clone https://github.com/Antidino72/DiscordLite

cd discord-lite

//modifie .env.exemple to .env and modify entry
npm install


npm start

and Open http://localhost:3000 in your browser.

To do list

  • Google OAuth2 & Secure Cookies
  • Real-time messaging
  • Message history (PostgreSQL)
  • Session cleanup / Logout
  • Online members list & status
  • Smart auto-scroll & sound notifications
  • Markdown parsing
  • Image & link previews
  • Mobile responsive

.env

check .env.exemple

Status

Work in progress

About

A lightweight Discord-inspired chat application built with Node.js, Express, Socket.IO and PostgreSQL, featuring authentication, real-time messaging and server-side session management.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages