What Does "Real Time" Mean for the Chat App?
Work from the brief alone. Write what you would produce — actors, requirements, data, a first slice, your unknowns — before opening anything below it; the exercise stops working if you read the reality first.
The chat app's brief says messages must appear "in real time". Nobody has built real-time delivery. Turn "real time" into specific questions, design the experiments that answer them, distinguish what is known, unknown and assumed, and decide which questions must be answered before the first slice and which can wait.
Your attempt
Nothing here is checked. It exists so that the reveal below is a comparison rather than a reading.
Reading everything about real-time messaging architectures — pub/sub, fan-out, presence services, message brokers — before sending one message between two tabs. A week of reading produces vocabulary and no number, and the first slice is designed for a scale and a mechanism that the afternoon experiment would have shown were not needed.
Read this even if you are confident. It is here rather than behind a button because it is the move most people actually make, it produces things that look like a project, and its cost arrives when the first hard requirement has nowhere to go.