MCPcopy Create free account
hub / github.com/TomDoesTech/Realtime-Chat-Application

github.com/TomDoesTech/Realtime-Chat-Application @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
12 symbols 31 edges 13 files 0 documented · 0% updated 4y ago★ 611 open issues

Browse by type

Functions 11 Types & classes 1
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Chat application with React.js, Node.js & Socket.io

Video: https://www.youtube.com/watch?v=a_xo-SbIfUQ

What are we building?

A chat application with rooms

What technologies are we using?

Node.js

  • Socket.io
  • ExpressJS
  • TypeScript

React.js

  • NextJS
  • Socket.io-client
  • React hooks
  • Context API
  • TypeScript
  • CSS Modules

What will you learn?

  • How sockets work on the server and the client
  • How to setup socket.io-client correctly in React
  • How to organize code for maintainability

Structure

  1. Bootstrap backend
  2. Bootstrap frontend
  3. Setup sockets on the backend
  4. Setup sockets in React with context API
  5. Add set username functionality
  6. Add create room functionality
  7. Add send message functionality
  8. Styling

Socket.io Emit cheatsheet

Support

Buy me a Coffee

Sign up to DigitalOcean I 💖 DigitalOcean

Subscribe on YouTube

Screenshots

Home screen

No rooms

In chat

Let's keep in touch

Buy me a Coffee

Sign up to DigitalOcean 💖

Extension points exported contracts — how you extend this code

browse all types & interfaces →

Core symbols most depended-on inside this repo

browse all functions →

Shape

Function 11
Interface 1

Languages

TypeScript100%

Modules by API surface

client/context/socket.context.tsx3 symbols
client/containers/Rooms.tsx3 symbols
client/pages/index.tsx2 symbols
client/containers/Messages.tsx2 symbols
server/src/socket.ts1 symbols
client/pages/_app.tsx1 symbols

For agents

$ claude mcp add Realtime-Chat-Application \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page