Skip to content

Real-time chat application built with React and Spring Boot

Notifications You must be signed in to change notification settings

khangng2611/react-spring-chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChatterBox

Real-time chat application built with React and Spring Boot. Talk with online friends, either in private or public ways.

Project overview

Features

  • Chatting using Spring WebSocket, using Stomp protocol over SockJS
  • Allowing public channels and private channels
  • Stomp Topic & Queue Subscription
  • Online & Offline User Detection
  • Closing Browser Detection

Demo

One-on-One Conversation One-on-one Conversation

Public Conversation Public Conversation

Project Requirements

Project development set up

Using docker-compose

  • Create your .env file, then set up your database configuration (database name, username, password). For example:

    POSTGRES_DB=chat
    POSTGRES_USER=postgres
    POSTGRES_PASSWORD=password
    DATASOURCE_URL=jdbc:postgresql://db:5432/    
    

    Note that DATASOURCE_URL is setup based on the postgres container name and port as you setup in the docker-compose.yaml file.

  • Running the following command:

    docker-compose up --build -d
    

Warning: Be sure that no other app is running on port 3000, 8080 or 5432