Skip to content

A real-time chat server built with Node.js, Express, and Socket.io, featuring persistent message storage using Turso (libSQL), enabling instant messaging with user notifications and message history.

Notifications You must be signed in to change notification settings

nruizcano/real-time-chat-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Real-Time Chat Server

A real-time chat server built with Node.js and Socket.io, featuring persistent message storage using Turso (libSQL), enabling instant messaging with user notifications and message history.

Features

  • Real-time chat powered by Socket.io.
  • Persistent message storage using Turso (libSQL).
  • User join and leave notifications.
  • Message history synchronization on reconnect.
  • Simple and functional web client for sending and receiving messages.
  • Local storage of username in the browser.

Technologies

  • Node.js
  • Express
  • Socket.io
  • Turso (libSQL)
  • morgan (HTTP logger)

Installation

  1. Clone the repository:
    git clone https://github.com/nruizcano/real-time-chat-server.git
  2. Install dependencies:
    npm install
  3. Create a .env file in the root directory and add your libSQL URL and authentication token.
  4. Start the server:
    npm start
  5. Open the web client in your browser at http://localhost:3000.

Usage

  • When accessing the app, you'll be prompted to enter a username.
  • Send messages using the input form.
  • Messages will appear in real-time to all connected users.
  • Notifications appear when users join or leave the chat.
  • Message history is synchronized automatically when reconnecting.

About

A real-time chat server built with Node.js, Express, and Socket.io, featuring persistent message storage using Turso (libSQL), enabling instant messaging with user notifications and message history.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published