Skip to content

Latest commit

 

History

History
113 lines (85 loc) · 4.06 KB

File metadata and controls

113 lines (85 loc) · 4.06 KB


🧠 LetsGo – Tag-Based Chatting App


🎯 Real-time chat app that matches users based on shared tags using Go, Redis (Lua), WebSockets, and gRPC.

🎥 Watch Demo on YouTube

🔗 Connect on LinkedIn


✨ Features

  • ✅ Tag-based user matching with Redis Bitmaps & Lua scripting
  • 🔌 Real-time WebSocket chat between matched users
  • 🎯 gRPC-based microservice communication
  • 🚀 Clean Architecture + Docker-ready
  • 🔄 FIFO fallback matching logic
  • 🧩 Ready for scaling with audio/video service modules

🧠 Architecture

                   +------------------+
                   |  Client (Web)    |
                   +--------+---------+
                            |
                            ▼
                   +--------+---------+
                   |  Chatting Service |
                   | - WebSocket       |
                   | - Usecase Logic   |
                   +--------+---------+
                            |
                            ▼ gRPC
                   +--------+---------+
                   | Matching Service |
                   | - Redis + Lua    |
                   | - Tag Matching   |
                   +------------------+

🛠️ Tech Stack

Go 1.22 Docker Redis + Lua Node.js TypeScript gRPC Lua

🚧 Upcoming

  • 📹 Video/Audio calling modules via dedicated microservice
  • 🌐 Admin dashboard & analytics
  • 🔒 Secure match flow with JWT/Auth

📦 Setup

git clone https://github.com/RoyRoki/LetsGo
cd LetsGo
docker-compose up --build

Open WebSocket tester at test/chat_test.html and enjoy!


📬 Connect

Follow me on LinkedIn for updates & deep dives!

🎥 Watch Project Demo on YouTube