Skip to content

Repository files navigation

Server+Client Implementation - Chats App

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage

About The Project

Screenshot 2022-05-24 at 15-55-01 Whatsapp Web Clone

  • This is the second part out of four in the project for Advanced Programming 2 course at Bar Ilan University.
  • In this part we created a web server using asp.net, which implemets the API provided.We migrated and adjusted the first part of the project (https://github.com/TomerPardi/Whatsapp-Web-Clone) to work with the server using API calls. In its current state the app supports only text communication. We used JWT's to distinguish and differentiate between connected users, and we identify user requests by the tokens embedded in the requests. Real time communications between users is implemented using SignalR hub in the server. Additionally, the repository contains a rating page created using asp.net MVC, which is linked to the chat login page.
  • Authors: Daniel Bronfman (ID: 315901173) & Tomer Pardilov (ID: 316163922).

(back to top)

Built With

(back to top)

Getting Started

After cloning the repository you will have two folder containing the 3 parts of the project.

  • The WebApplication folder contains the asp.net backend and the react on node.js frontend in the ClientApp folder.
  • The RatingApp contains the asp.net MVC code of the rating page.
  • To fully launch the project you need to have 2 asp.net servers running, and node.js for the react client.

Prerequisites

Make sure to get all the dependencies for the react webclient.

  • npm
    npm install
  • Ports: Please make sure that the rating app server is listeting on port 5081, and that nodejs listens on port 3000.

Usage

We provide as batch script to launch the servers simultaneously, launch.bat located in the root folder. launch

Otherwise launch the asp.net servers and run npm start from the ClientApp folder.

Rating app demo:

anim-opt

The default username/passwords are: Username | Password

alice | 123 bob | 456 dan | 123 peter | 123

  • Limitations: Due to the authentication using JWT and cookies only one client can be connected per browser (2 if using one incognito browser.) For best results use Google Chrome.

(back to top)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages