/project_chat_application

Build and deploy a real-time chat application with React.js, Node.js, Express.js, and Socket.io.

Primary LanguageJavaScript

Gossip - a Realtime Chat Application

Netlify Status

Website: tinyurl.com/gossip-chat-app

An application that runs on the client side (hosted on Netlify) and accesses the remote server (hosted on Heroku) for information is called a client/server application.

AIM

Use Cloud Services to build and deploy an application.

Tech Stacks Used:

a JavaScript library for building interactive UI.It is component-based library & allows us to create reusable UI components that manage states & props, then compose them to make complex UIs.

a JavaScript runtime built on Chrome's V8 JavaScript engine, an open source server environment, designed to build scalable network applications.

Why did we choose NodeJS?

CLICK ME

- Here is how PHP or ASP handles a file request: - Sends the task to the computer's file system. - Waits while the file system opens and reads the file. - Returns the content to the client. - Ready to handle the next request. - Here is how Node.js handles a file request: - Sends the task to the computer's file system. - Ready to handle the next request. - When the file system has opened and read the file, the server returns the content to the client. - Node.js eliminates the waiting, and simply continues with the next request. - Node.js runs single-threaded, non-blocking, asynchronously programming, which is very memory efficient.

Socket.IO enables real-time, bidirectional and event-based communication with reliability and speed. It is built on top of the WebSockets API (Client side) and Node.js.

Working of Socket.io

To establish the connection, and to exchange data between client and server, Socket.IO uses Engine.IO. This is a lower-level implementation used under the hood. Engine.IO is used for the server implementation and Engine.IO-client is used for the client. With sockets, when the server receives a new message it will send it to the client and notify them, bypassing the need to send requests between client and server.

  • Languages:

    JavaScript, CSS, HTML.

image

Screenshot (1674)

Hosting

Server on Heroku
Client on Netlify
Netlify Heroku
Description Deploy modern website with one click. Build, run, and operate applications entirely in the cloud.
Parent Company Independent SalesForce
Flexibility Low High
Price Fixed Price Pay by the Usage
Scalability Scalable Scalable
Ideal for Modern web projects automation Creating entire applications (including database) on a cloud environment
Continuous Integration Out of the box Option to turn it on
Developer Focus Frontend Backend
Type of Project Web Mobile and Web
Remarks No sleeping apps Sleeping apps