19

@slisandro/stream-chat

Real-time chat application with Socket.io, Next.js and SQLite

๐’๐ญ๐ซ๐ž๐š๐ฆ ๐‚๐ก๐š๐ญ

Stream Chat

A modern real-time chat application with Socket.io, Next.js, and SQLite.


Explore the docs ยป

View Demo ยท Report Bug ยท Request Feature

About The Project

Product Name Screen Shot

Stream Chat is a real-time group chat application built with modern web technologies. It provides a seamless messaging experience with features like instant message delivery, user presence detection, private messaging, and an anti-spam system.

Key Features

  • Real-time messaging with Socket.io
  • User management: Join with a username, see who's online
  • Private messaging with /msg command
  • Anti-spam protection to prevent abuse
  • Command system: /users, /me, /clear, /help, and more
  • Persistent storage with SQLite database
  • Responsive design for desktop and mobile
  • Dockerized for easy deployment

Built With

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Socket.io
  • SQLite
  • Node.js
  • Fly.io
  • Docker

Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

  • Node.js (v18 or later)
  • npm or pnpm

Installation

  1. Clone the repository
  git clone https://github.com/Slisandro/stream-chat.git
  1. Install dependencies
  pnpm install
  1. Run the development server
  pnpm dev
  1. Open http://localhost:3000 in your browser.

Commands

Available chat commands:

Command Description

  • /users: Show list of connected users
  • /me [action]: Perform an action in third person
  • /msg [user] [message]: Send a private message
  • /clear: Clear your chat screen
  • /help: Show available commands

Roadmap

  • Real-time messaging with Socket.io
  • User presence and online list
  • Private messaging
  • Anti-spam protection
  • Persistent storage with SQLite
  • Responsive design
  • Docker deployment
  • User authentication
  • Message reactions
  • File sharing
  • Chat rooms

Contact LinkedIn - salvareschilisandro0@gmail.com

Project Link: https://github.com/Slisandro/stream-chat