All projects
Case study

2025

Chat Inbox

Shared inbox that brings live website chat and email into one place for a small team. Conversations update in real time over WebSockets, can be assigned and handed off between teammates, and keep the full history with each customer, so nothing sits unanswered and nobody replies twice.

  • React
  • Node.js
  • WebSockets

01

The problem

A small team was talking to customers through a live chat widget and a support email address, in two different tools. Conversations were lost between the two, two people would answer the same customer, and nobody had the full history when a customer came back.

02

The solution

I built a shared inbox with a React front end and a Node.js back end using WebSockets. Website chat and inbound email land in one conversation list that updates in real time, conversations can be assigned and handed off between teammates, and each customer's full history across both channels is kept together.

03

The result

The team works from one screen, customers get one coherent conversation whether they write or chat, and nothing sits unanswered because ownership is visible. Handoffs stopped losing context because the history travels with the conversation.