Skip to content

Building a real time web chat application powered with go backend providing seamless connectivity for multiple user

License

Notifications You must be signed in to change notification settings

ifrah-ashraf/livechat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Real-Time Chat Application (Golang & Next.js)

A real-time chat application built with Golang (backend), Next.js (frontend), and PostgreSQL (database). It uses WebSockets for real-time communication and Goroutines & Channels for concurrency.

Features

  • Real-time messaging with WebSockets.
  • Efficient message handling using a worker pool (Goroutines & Channels).
  • User authentication.
  • Persistent chat history with PostgreSQL.
  • Responsive UI built with Next.js and TailwindCSS.

Technologies

  • Backend: Golang, WebSockets, PostgreSQL
  • Frontend: Next.js, TailwindCSS

Setup

Prerequisites

  • Go (v1.16+)
  • Node.js (v14+)

Backend Setup

  1. Clone the repo:
    git clone https://github.com/ifrah-ashraf/livechat.git
    cd livechat/server
    
  2. Set the env variable and run backend:
    go mod tidy
    go run main.go
    
  3. Run the frontend
    cd livechat/client
    npm i && npm run dev
    

Make sure to set the correct env variable to run it properly with the postgres URL.

About

Building a real time web chat application powered with go backend providing seamless connectivity for multiple user

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages