Skip to content

Morse Code chat app w/ Concurrent Go, AWS RDS, REST APIs, Docker, WebSockets, HTTP Servers, React

Notifications You must be signed in to change notification settings

GeorgesGITHUB/Morse-Chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Morse Chat (See "How to run" section below)

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.

Screenshot(s)

Client apps communicating image

Run time logs image

Prerequisites to run

  • Have git installed
  • Have Docker installed

How to run

  1. Open a terminal instance and download the repo by pasting git clone https://github.com/GeorgesGITHUB/Morse-Chat/
  2. Change your current directory to the project's root folder, using cd Morse-Chat
  3. Create and run the Docker containers by pasting and running docker-compose up
  4. Have many chat clients by opening multiple browser tabs of http://localhost:5173/

About

Morse Code chat app w/ Concurrent Go, AWS RDS, REST APIs, Docker, WebSockets, HTTP Servers, React

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published