A Real Time Chat App with a morse code twist!
Communication between many React clients connected to a single Go HTTP server (Backend) instance, via Web Sockets.
The Backend listens and broadcasts messages concurrently using Go Routines and Channels.
Frontend Services make HTTP requests to the Backend API endpoints, written using the Gin Framework in Go.
Frontend and Backend are Docker containers built and served using a multi-stage process, with ports exposed to each other.
Plays Morse Code audio using the Web Audio API (AudioContext, Oscillator, GainNode).
Saves conversation messages and user info to an AWS RDS PostgreSQL database.
Dynamically (stateful) renders content of the React component as Plain Text or Morse Code.
- Have
git
installed - Have
Docker
installed
- Open a terminal instance and download the repo by pasting
git clone https://github.com/GeorgesGITHUB/Morse-Chat/
- Change your current directory to the project's root folder, using
cd Morse-Chat
- Create and run the Docker containers by pasting and running
docker-compose up
- Have many chat clients by opening multiple browser tabs of
http://localhost:5173/