PutraCoderz
Back to Portfolio

Simple Real-Time Chat System

2026
Golang
PostgreSQL
WebSocket
Redis
Fiber

A high-performance chat application built with Golang, PGX, Parsley, GoFiber, and WebSockets.

This project serves as a deep dive into modular architecture and Clean Architecture principles.


Preview

Simple Real-Time Chat System

📝 Overview

In this project, I developed a simple yet robust real-time chat application using Golang, PGX, Parsley, GoFiber, and WebSockets. The goal was to create a lightweight communication system that prioritizes performance, clean code architecture, and secure data handling.

This application features secure user authentication, private 1-on-1 messaging, a dynamic friend list, and persistent message history.

🚀 Key Features

🛠️ Technology Stack

LayerTechnology
BackendGo (Golang)
Web FrameworkFiber v3
Real-timeFiber WebSocket Extension
DatabasePostgreSQL (via pgxpool)
CachingRedis (Session & State)
Dependency InjectionParsley
FrontendHTML5, Vanilla JavaScript, Bootstrap 5

🏗️ Project Architecture

The project follows a clean, modular structure to ensure maintainability and scalability:

💡 Technical Insight

A key highlight of this project was implementing Parsley for Dependency Injection, which significantly improved the testability and organization of the code. Managing WebSocket connection states while ensuring message persistence in PostgreSQL without sacrificing speed was a challenging yet rewarding part of the development process.

🔗 Github Repository

https://github.com/putra4648/my-chat-app