How to Build a Video Chat Application with Node.js, Socket.io and TypeScript

Shadid Haque
6 min readJun 30, 2019

Hey awesome people, it’s real good to see you back here. Alright so, in this tutorial we are going to be building a video chat application, yup you heard it right. We will explore how websites like Skype and Slack works. All right so let’s dive in.

Our Stack

  1. Node.js
  2. Express.js
  3. TypeScript
  4. Socket.io

Why Node.js ?

That is an excellent question. Usually REST apis are written in a client/server model, in which the client would demand certain resources from the server, and get those resources in response. This architecture is common in traditional web applications. The server reacts when the client made a request, and then closed the connection right after each response. However, in 2009, Ryan Dahl introduced a new approach to server-side runtime written in JavaScript. It enables requesting in and out of the web server (I/O) to be processed concurrently and asynchronously using a concept called non-blocking, or asynchronous I/O. The original idea behind this was to build websites with real-time push capability. Thus Node.js was born.

Unlike the previous client/server model, it became possible to develop two-way connection websites with…

--

--

Shadid Haque

Software Craftsman | Entrepreneur | Freelancer. Always on the look for opportunities to make the world a little bit better with technology.